google-apps-script - SpreadsheetApp.getActive() 为表单返回 null

标签 google-apps-script

我有一个 Google 表单,其中包含以下脚本。每次都会失败,因为 SpreadsheetApp.getActive() 返回 null。关于原因有什么想法吗?

function onOpen(e) {
  var courseSheet = SpreadsheetApp.getActive().getSheetByName("Courses");
}

我得到的错误是TypeError: Cannot call method "getSheetByName"of null。 (第 6 行,文件“”)

我在网上找到了很多示例,这些示例显示了这种方式的用法,所以我确信这是可能的。这可能是我的表单链接到的电子表格的权限问题吗?

最佳答案

我认为问题可能在于使用

.getActive()

来自表单。打开表单时没有正在使用的事件电子表格。尝试一下:

SpreadsheetApp.openById('id')

您可以从 url 中获取 id。看起来像这样:

d/10r8Pv03S8qfMiA7dET2KNRmy0DEEExxPld42HjW-aX2c/

斜杠“/”之间的数字和字母是id。

关于google-apps-script - SpreadsheetApp.getActive() 为表单返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33078302/

相关文章:

javascript - 如何在google脚本中使用函数.getLastRow()

forms - 使用表单更新谷歌电子表格上的现有数据?

google-apps-script - 谷歌金融股票价格的替代品

google-apps-script - 谷歌表格: Prevent the unchecking of a checkbox after it has been checked

javascript - 语法错误 : SyntaxError: Cannot use import statement outside a module line: 1 file: Code. gs

validation - Google 表格 - 多个相关下拉列表

html - 无法在 Google 站点的嵌入式 Web 应用程序中设置链接?

google-apps-script - 如何在 Google Apps 脚本中处理 Google Contacts API 返回的照片字节

javascript - 将虚拟参数添加到 Google 表格的自定义函数

json - 通过自定义菜单从浏览器将 Google 表格数据下载为 JSON