用途:为 Google Sheets 与 Workspace 应用编写服务端自动化脚本,运行在 Google 基础设施上,提供免费额度。产出包括自定义菜单、对话框、侧边栏、自动触发器(编辑时、定时、表单提交)、邮件通知、PDF 导出与 API 集成。
主要能力:onOpen 建菜单;onEdit、时间驱动、表单提交触发器;HtmlService 对话框与侧边栏;MailApp 批量邮件;UrlFetchApp 调用外部 API;PDF 导出;数据验证下拉;PropertiesService 持久存储;自定义表格函数。
使用方式:打开表格 → 扩展程序 > Apps Script → 粘贴脚本 → 保存 → 重新加载表格。首次运行需 OAuth 授权,未验证脚本需点“高级 > 前往(不安全)> 允许”。脚本建议含头部注释、顶部配置常量与 onOpen()。
关键限制:函数名以 _ 结尾为私有,无法被 google.script.run 调用且静默失败;读写须用 getRange().getValues()/setValues() 批量操作;修改表格后返回前调用 SpreadsheetApp.flush();仅 V8 运行时,无 setTimeout/fetch/FormData/URL/crypto,改用 Utilities.sleep、UrlFetchApp、Utilities.computeDigest 等;简单触发器不能发邮件、访问其他文件、抓取 URL 或开对话框,需用 ScriptApp.newTrigger() 创建可安装触发器;自定义函数须加 @customfunction,限 30 秒且不能访问需授权服务。
配额:免费账号脚本单次运行 6 分钟、触发器每日总运行 90 分钟、每日邮件 100 封、URL Fetch 20000 次、属性存储 500 KB、同时执行 30 个;Workspace 账号邮件 1500 封、URL Fetch 100000 次、触发器每日 6 小时。
调试:Logger.log/console.log 查看执行日志,编辑器下拉手动运行,Executions 标签查看历史与堆栈。