ONLYOFFICE 自动化工具:宏和AI函数如何选择?

2026年02月05日作者:Charles

ONLYOFFICE 为您提供了两种工具来进行自动化工作:AI 函数。它们能帮助您节省时间、减少手动操作,从而更高效地工作。

这两种工具都能让您的工作更高效、更智能,但它们的工作原理不同,适用的场景也各有侧重。无论您是需要开发定制化解决方案的开发者,还是希望提升日常办公效率的普通用户,这份指南都能帮您选对合适的工具。

Macros or AI Functions? Understanding ONLYOFFICE Tools

基础知识

什么是 ONLYOFFICE 宏?

ONLYOFFICE 宏是一种小型脚本,可用于自动化文档、电子表格和演示文稿中的重复性任务。它基于 JavaScript 语言和 Office API,能让您直接在编辑器内完成内容格式化、数据更新和自定义工作流搭建等操作。

如何使用宏:

  • 打开视图选项卡,点击
  • 使用 Office API 编写 JavaScript 代码。
  • 点击运行来执行宏。
  • 脚本会直接操作文档。

注意​ 从 7.1 版本开始,宏在严格模式下运行。这意味着您必须在使用的所有变量前使用 letconst 进行声明。不能使用 windowdocumentalert 函数。

示例:为表格行交替着色

(function () {
  let worksheet = Api.GetActiveSheet();
  for (let i = 1; i < 200; i += 2) {
    let rowOdd = i,
      rowEven = i + 1;
    worksheet.GetRange(
      "A" + rowOdd + ":S" + rowOdd).SetFillColor(Api.CreateColorFromRGB(138, 181, 155)
      );
    worksheet.GetRange(
      "A" + rowEven + ":S" + rowEven).SetFillColor(Api.CreateColorFromRGB(216, 227, 220)
      );
  }
})();

这个宏可以在不到一秒的时间内为 200 行数据交替着色——如果是手动操作则需要不少时间。

什么是 ONLYOFFICE AI 函数?

AI 函数将 ONLYOFFICE 与 ChatGPT 等 AI 模型连接起来。它们允许您使用提示词来运行 AI 驱动的文档操作,使编辑器能够根据您的要求执行自动化操作。AI 函数是 AI 插件的一部分,该插件自 2.4.2 版本引入。

设置

  1. onlyoffice.github.io 仓库克隆到本地设备。
  2. helpers 文件夹 (sdkjs-plugins/content/ai/.dev/helpers)中编写自定义 AI 函数代码。
  3. 根据编辑器类型,将代码放入对应的 cell, slide, 或 word文件夹
  4. 更新 config.js文件中的 AI 插件版本号,避免缓存问题(例如将版本号从 3.0.3 升级至 3.0.4)。
  5. 运行 helpers.py 文件.
  6. 选中 ai 文件夹 (sdkjs-plugins/content/ai), 内的所有插件文件,压缩为 zip 格式,并将压缩包重命名为 ai.plugin.
  7. 将该压缩包放回 sdkjs-plugins/content/ai/deploy.
  8. 推送更改。
  9. 基于此仓库构建 GitHub Pages 站点,具体操作可参考 GitHub Pages 官方文档。
  10. 准备自定义应用商店链接:在 GitHub Pages 网址后添加 /store/index.html,最终链接格式为:
    https://YOUR-USERNAME.github.io/onlyoffice.github.io/store/index.html
  11. 打开 ONLYOFFICE 编辑器,进入插件插件管理器
  12. 点击插件管理器右上角的商店</>,输入您创建的自定义应用商店链接。
  13. 更新 AI 插件。

注意!如需查看更详细的操作指南,可参考这篇文章

如何使用 AI 函数

  1. 根据需求配置 AI 服务提供商及对应的 API 密钥。
  2. 按下快捷键 Ctrl + /,打开 AI 对话窗口。
  3. 输入指令(例如解释这段文本)。
  4. AI 会自动匹配合适的功能并执行操作。
  5. 结果将直接呈现在文档中。

AI 函数会记忆对话历史,您可以提出跟进问题或优化结果。若想重新开始对话,按下快捷键 Ctrl + Alt + / 即可。

示例:添加 AI 批注

使用 commentText 函数,可为选中的文本添加智能批注,具体步骤如下:

  1. 在文档中选中需要处理的文本。
  2. 按下快捷键 Ctrl + /,打开 AI 对话窗口。
  3. 输入指令:解释这段文本。
  4. 按下回车键提交指令。

AI 会读取选中的文本内容,生成对应的解释,并将其作为批注添加到文档中。

运行逻辑:

// Simplified structure of an AI Function
func.call = async function (params) {
  // 1. Get the selected text
  let text = await Asc.Editor.callCommand(function () {
    let doc = Api.GetDocument();
    let range = doc.GetRangeBySelect();
    return range ? range.GetText() : "";
  });
  // 2. Ask the AI model
  let requestEngine = AI.Request.create(AI.ActionType.Chat);
  let argPrompt = params.prompt + ":\n" + text;
  // 3. Add the AI's answer as a comment
  await requestEngine.chatRequest(argPrompt, false, async function (data) {
    await Asc.Editor.callCommand(function () {
      let doc = Api.GetDocument();
      let range = doc.GetRangeBySelect();
      range.AddComment(data, model, "uid" + model);
    });
  });
};

您可以在此处查看完整的 commentText 函数代码。

为何 AI 函数灵活

AI 函数分别调用 CallCommand,这使您可以在文档操作前后执行自定义逻辑。这使它们非常适合 AI 集成——您可以向 AI 模型发送请求,处理响应,然后更新文档。而宏应用将所有操作都封装在 CallCommand 内,这更简单但灵活性较低。

主要区别

宏用于直接的、离线的文档操作。AI 函数用于将 AI 模型与 ONLYOFFICE 集成。

以下是它们的对比:

ONLYOFFICE 自动化工具:宏和AI函数如何选择?

适用场景选择

选择宏功能

当您需要直接操作文档时:

  • 离线工作​ – 无需互联网连接。
  • 零成本​ – 免费无限次自动化。
  • 直接进行文档操作​ – 格式化、数据操作、计算。
  • 结果一致​ – 相同的输入总是产生相同的输出。
  • 快速原型设计​ – 编写代码并在编辑器中立即测试。
  • 生产性工作​ – 财务报告、合规文档、自动化工作流。

选择 AI 函数

当您的自动化需要 AI 函数时:

  • AI 模型集成​ – 连接 AI 服务并使用其输出。
  • 文档自动化​ – 将 AI 结果直接应用到文档中。
  • 上下文处理​ – 处理内容时能感知选区或文档结构。
  • 高级逻辑​ – 需要在文档操作前后执行自定义代码的灵活性。

总结

ONLYOFFICE 宏功能和 AI 函数的定位与用途各不相同,核心区别可以总结为一段话:

能用于直接操作文档,免费、支持离线使用,是所有无需人工智能参与的自动化场景的理想选择,适用于文档格式化、数据计算、数据处理和自定义公式编写等任务。

AI 函数用于将 ONLYOFFICE 与人工智能模型集成,它的开发难度比宏功能更高,需要联网且产生一定的使用成本,但却是需要人工智能能力时的最佳选择,适用于内容生成、文档处理和人工智能驱动的文档任务自动化等场景。

ONLYOFFICE 正在持续优化这两种工具,宏功能新增了异步函数等特性,AI 函数也在逐步完善,即将结束测试阶段,未来会具备更高的稳定性和更丰富的功能。同时掌握这两种工具,您就能充分发挥 ONLYOFFICE 的自动化办公能力。

创建免费的 ONLYOFFICE 账户

在线查看并协作编辑文本文档、电子表格、幻灯片、表单和 PDF 文件。