【发布时间】:2017-03-01 16:18:31
【问题描述】:
我有一个包含许多命名范围的电子表格,我想要一个目录,它提供超链接以跳转到它们。
在 UI 中,我可以创建一个指向命名范围的超链接,最终格式为:
https://docs.google.com/spreadsheets/d/xxxxx/edit#rangeid=yyyyy
其中 xxxx 是一个长电子表格 ID,yyyy 是一系列数字。
由于我有很多这样的链接,我想使用 Google Apps 脚本以编程方式生成所有这些链接。我可以使用Spreadsheet.getRangeByName 找到命名范围对象,但我找不到从中获取 rangeid 的方法。
【问题讨论】:
-
查看NamedRange class documentation,您会在其中找到getId()
-
遗憾的是,该文档适用于 Google Docs,而不是 Google Sheets。我今天下午打了几次!
-
对不起,打错了。 Try this one. - 没有 id...
-
我在 the external Google Sheets REST API 中找到了命名范围 - 并在 API explorer 中尝试了它,但遗憾的是,返回的 namedRangeIds 在这种情况下似乎不起作用。
-
我运行了几个脚本来查看是否没有记录某些内容并且找不到任何内容。我显示的部分不使用命名范围,而是实际范围,因此获取范围的 R1 表示法并将链接生成为:docs.google.com/spreadsheets/d/xxxx/… 其中 zzzz = 工作表 ID。通过
var key = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName).getSheetId();获取它
标签: google-apps-script google-sheets