You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets插件自定义函数出现#NAME错误,点击菜单后才可用,是否正常?

问题解答

这属于预期行为,根源在于Google Apps Script的权限机制:

  • 插件刚安装到新表格时,脚本还没获得运行所需的授权。作为单元格公式使用的自定义函数(比如helloWorld()),在未授权状态下无法被执行,所以返回#NAME?错误——这个错误本质是脚本权限不足导致无法被识别调用。
  • 而通过菜单触发的函数(比如helloWorldBox())会触发Google的授权流程,当你点击菜单选项并完成授权后,整个插件的脚本都获得了对应的运行权限,此时再在单元格中调用helloWorld()就能正常执行了。

补充说明:这种情况只会在新安装插件的表格首次使用时出现,后续再次打开该表格,自定义函数应该能直接运行,无需再次点击菜单触发授权。

你的插件代码

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  ui.createMenu('My Custom Menu')
      .addItem('Activate Plugin', 'helloWorldBox')
      .addToUi();
}
 
function helloWorldBox() {
  Browser.msgBox("Hello World");
}

function helloWorld() {
  return "hello world";
}

内容的提问来源于stack exchange,提问作者DD.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 17:06:32