首页 > 解决方案 > Google Apps 脚本从导入的包中获取有界工作表数据

问题描述

我试图弄清楚如何从电子表格中获取数据,该电子表格绑定到在另一个脚本中作为包引用的脚本。

我有一个包含一些数据的电子表格和一个具有此功能的有界脚本:

function getIt()
{
  return SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1").getRange("A1").getValue();
}

该脚本按预期工作。

然后我有一个独立的脚本/项目,我已将上述脚本添加为库。在这个独立的脚本中,如果我尝试library.getIt()我会得到一个错误:

TypeError: Cannot call method "getSheetByName" of null. (line 8, file "Code", project "Untitled project")

我想要做的是在脚本中创建一些函数,这些函数绑定到从工作表获取/返回数据的工作表。然后我希望能够将脚本作为库添加到其他脚本中,并通过调用这些函数来获取所述数据。

这可能吗?

标签: google-apps-scriptgoogle-sheets

解决方案


您将无法getActiveSpreadsheet()使用独立脚本,尝试使用openById()oropenByUrl()代替。

尽管您的getIt()脚本已绑定到电子表格,但我相信它会尝试getActiveSpreadsheet()为您运行它的当前脚本文件运行,该文件会返回,null因为它未绑定到任何电子表格。


推荐阅读