链接到嵌入式的Google表中的特定表



由于我在Google表中会有大量的床单,所以我想在第一张纸上创建指向所有表格的链接。这在Google表中使用以下代码:

function goToSheet2() {
     goToSheet("Sheet2");
}
function goToSheet(sheetName) {
    var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName);
    SpreadsheetApp.setActiveSheet(sheet);
}

进一步解释了如何在其他堆栈溢出文章中如何确切说明。

但是,一旦您嵌入了工作表,它就不再起作用了。我想这与此脚本使您的按钮/映像像链接一样(脚本只能帮助您找到适当的#gid=)的事实有关,因此实际上它只是重新加载了整个页面,这在嵌入式版本中是不可能的。

任何指向正确方向的指针都将不胜感激。

编辑:我现在知道为什么这不起作用。如本页面所述:

只有有权限编辑电子表格,文档或表单的用户才能运行其绑定脚本。只有视图访问的合作者无法打开脚本编辑器,尽管如果他们制作了父文件的副本,他们将成为副本的所有者,并且能够查看并运行脚本的副本。

我似乎不了解如何将绑定的脚本制作到与嵌入式文件一起使用的独立脚本中。我尝试通过"将其部署为WebApp"发布脚本,但这无效。

编辑2 :现在,我有一种非常不高的方法来使脚本在电子表格的嵌入式版本上工作,但是电子表格不是我想要的方式。

解释:基本上,我从中更改了iframe代码:

<iframe src="https://docs.google.com/spreadsheets/d/SPREADSHEET-ID/pubhtml?widget=true&amp;headers=false&amp;chrome=false" height="500" width="500"></iframe>

<iframe src="https://docs.google.com/spreadsheets/d/SPREADSHEET-ID/edit?usp=sharing?widget=true&amp;headers=false" height="500" width="500"></iframe>

但是,这迫使我在菜单和所有内容上都显示了整个Google床单页面。但是,该脚本可以通过单击图像来更改为另一个表。

现在进入有趣的部分:我可以通过在链接中添加&rm=minimal来隐藏菜单,但是现在脚本不再起作用。

您最好使用创建代码以将数据显示为HTML并将其部署为Web应用程序。从中,您可以根据选择的选择,使Web应用程序显示适当的数据。您可能需要从这里开始:扩展Google表格,然后查看HTML服务:创建并将HTML作为起点。现在,您可以通过IFRAME将Web应用程序嵌入任何网页。这将使它保持仅显示模式,并且查看器不需要对文件具有权限,因为您可以按照自己的身份运行Web应用程序。

最新更新