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

如何在创建Google Sheet时调用一次Google Apps Script函数?

Google Sheet 创建时仅执行一次的初始化解决方案

核心实现方案:可安装「创建」触发器 + 初始化函数

1. 编写初始化函数

打开目标Google Sheet,点击「扩展程序」→「Apps Script」,替换默认代码为以下内容:

function setSheetMonthYear() {
  const activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  // 先检查A1是否为空,避免重复赋值
  if (activeSheet.getRange("A1").getValue() === "") {
    const currentDate = new Date();
    // 生成「月份+年份」格式(示例:"10-2024",可根据需求调整格式)
    const monthYearStr = `${currentDate.getMonth() + 1}-${currentDate.getFullYear()}`;
    activeSheet.getRange("A1").setValue(monthYearStr);
  }
}

2. 配置专属「创建」触发器

在Apps Script编辑器中:

  • 点击左侧的时钟图标(「触发器」面板)
  • 点击「添加触发器」按钮
  • 按以下选项配置:
    • 选择函数:setSheetMonthYear
    • 部署类型:Head
    • 事件源:从电子表格
    • 事件类型:创建
  • 保存并完成权限授权

为什么之前的方法失效?

  • 单元格调用函数:自定义单元格函数会随表格重算(打开、编辑内容)自动触发,无法做到仅执行一次。
  • 标准触发器:你大概率选错了事件类型——标准的「打开」触发器是每次打开表格都执行,而「创建」触发器是仅在表格首次创建时运行一次,属于可安装触发器的专属事件,默认标准触发器列表里找不到这个选项,必须手动添加可安装触发器。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 13:05:18