跳到主要内容

添加自定义函数

从 8.1 版本起,您可以使用插件向电子表格添加自定义函数:

创建自定义函数

  1. 打开视图选项卡并选择,宏窗口将会弹出。
  2. 自定义函数区域,点击Plus icon,您将看到一个自定义函数模板:
(function()
{
/**
* Function that returns the argument
* @customfunction
* @param {any} arg Any data.
* @returns {any} The argument of the function.
*/
function myFunction(arg) {
return arg;
}
Api.AddCustomFunction(myFunction);
})();
  1. 为您的函数编写说明。如有需要,请指定参数和返回值,添加函数脚本,使用 Api.AddCustomFunction 方法将函数添加到系统中。

  2. 点击保存

添加自定义函数添加自定义函数

现在,您可以在电子表格中使用该函数了。

函数使用示例函数使用示例

您可以在此处找到自定义函数的示例。

访问单元格地址(自 v9.0.4 起)

从 9.0.4 版本开始,您可以在自定义函数中访问单元格地址信息:

  • this.address — 自定义函数正在计算的单元格的地址(例如,"C5");

  • this.args — 输入参数的数组。每个参数对象包含一个 address 字段,表示源单元格的地址(例如,"A1")。该数组具有以下结构:

    [
    {"address": "arg1_address"},
    {"address": "arg2_address"},
    ...
    ]

示例:

(function()
{
/**
* Function that returns the argument
* @customfunction
* @param {any} arg1 Any data.
* @param {any} arg2 Any data.
* @returns {any} The argument of the function.
*/
function CUSTOMFUNC(arg1, arg2) {
console.log("Function is evaluated in:", this.address);
this.args.forEach(arg => {
console.log("Argument value:", arg.value, "from cell:", arg.address);
});
}
Api.AddCustomFunction(CUSTOMFUNC);
})();

管理自定义函数

如果您想重命名函数,请点击自定义函数名称旁的 Dots icon 图标并且选择重命名。输入新的函数名称后点击确定

要删除不需要的自定义函数,请点击自定义函数名称旁的 Dots icon 图标然后选择删除

要复制函数,方法是点击自定义函数名称旁的 Dots icon 图标然后选择复制

自定义功能菜单自定义功能菜单

异步函数

从 9.0 版本开始,您可以添加异步自定义函数,以便在函数体中管理任何请求:

(function()
{
/**
* 返回参数的函数
* @customfunction
* @param {any} arg 任意数据。
* @returns {any} 函数的参数。
*/
async function myFunction(arg) {
return arg;
}
Api.AddCustomFunction(myFunction);
})();

您可以在此处找到异步自定义函数的示例。