DEV Community

Zhang Zhemin
Zhang Zhemin

Posted on

从 JS 宏到 AI Agent:软件工程师的 WPS 自动化实战指南

从 JS 宏到 AI Agent:软件工程师的 WPS 自动化实战指南

为什么是 WPS

WPS 不只是办公套件,它的 JS 宏让前端/Node 工程师可以用熟悉的 JavaScript 做自动化。你可以从 WPS官网 了解最新版,通过 WPS下载 安装。

1. WPS JS 宏基础

WPS JS 宏使用与 VBA 类似的对象模型,但语法是 JavaScript。下面示例把当前工作表数据读成二维数组:

function main() {
  const sheet = Application.ActiveSheet;
  const used = sheet.UsedRange;
  const data = [];
  for (let r = 1; r <= used.Rows.Count; r++) {
    const row = [];
    for (let c = 1; c <= used.Columns.Count; c++) {
      row.push(used.Cells.Item(r, c).Text);
    }
    data.push(row);
  }
  console.log(JSON.stringify(data));
}
Enter fullscreen mode Exit fullscreen mode

这段代码把 UI 操作变成可复用逻辑,是自动化的第一步。

2. 从宏到自动化流水线

一个可落地的流程通常分四层:触发层(按钮、定时、文件事件)、数据层(Range、CSV、API)、逻辑层(清洗、校验、汇总)、Agent 层(AI 决策与工具调用)。工程化建议:宏代码用 Git 管理;配置与代码分离;外部调用加超时、重试、幂等;批量处理时分批执行,避免阻塞 WPS UI。

3. 接入 AI Agent 的模式

常见有三种:宏内直连 LLM(快但密钥风险高);宏调用本地 Agent 服务(推荐);宏推送任务到队列,由 Agent 集群消费(适合大规模)。推荐模式中,WPS 只负责采集和展示,Agent 负责鉴权、提示词、工具编排。下面是一个 Node.js Agent 服务示例:

const express = require('express');
const app = express();
app.use(express.json());
app.post('/agent', async (req, res) => {
  const rows = req.body.rows;
  const prompt = '请分析表格并给出清洗建议:' + JSON.stringify(rows);
  // 省略真实 LLM 调用
  res.json({ ok: true, suggestion: '删除空行,统一日期格式' });
});
app.listen(3000, () => console.log('Agent 已启动'));
Enter fullscreen mode Exit fullscreen mode

WPS 宏可以通过 XMLHttpRequest 调用它:

function callAgent() {
  const sheet = Application.ActiveSheet;
  const used = sheet.UsedRange;
  const rows = [];
  for (let r = 1; r <= used.Rows.Count; r++) {
    const row = [];
    for (let c = 1; c <= used.Columns.Count; c++) {
      row.push(used.Cells.Item(r, c).Text);
    }
    rows.push(row);
  }
  const xhr = new XMLHttpRequest();
  xhr.open('POST', 'http://127.0.0.1:3000/agent', false);
  xhr.setRequestHeader('Content-Type', 'application/json');
  xhr.send(JSON.stringify({ rows: rows }));
  if (xhr.status === 200) {
    alert(JSON.parse(xhr.responseText).suggestion);
  } else {
    alert('Agent 调用失败:' + xhr.status);
  }
}
Enter fullscreen mode Exit fullscreen mode

生产环境建议改为异步或外部进程,避免同步 XHR 卡住界面。

4. 安全与稳定性清单

  • 不要在前端宏硬编码 API Key。
  • WPS官网 获取正版,通过 WPS下载 安装并保持更新。
  • 对 Agent 返回做 schema 校验,不直接执行未验证命令。
  • 设置超时、重试、熔断和审计日志。
  • 批量写入先备份,失败可回滚。

5. 常见坑

WPS JS 宏不是浏览器环境,没有 DOM;不同 WPS 版本 API 有差异;路径、编码、日期格式易出错;提示词要固定输出结构,减少解析失败。

总结

从 JS 宏到 AI Agent,WPS 可以成为自动化工作台。先用宏把重复操作数据化,再用 Agent 把数据变成决策和动作。建议从 WPS官网 了解能力,通过 WPS下载 安装最新版,从读取表格、调用本地 Agent、写回结果这个小闭环开始。

Top comments (0)