是否可以编写脚本来将Google工作表地址写入特定的单元格?

时间:2019-02-09 00:37:03

标签: google-apps-script google-sheets

我要向我的Google工作表添加超链接,这些超链接将复制到整个工作表中。我在A2:A中有一个带有工作表名称的目录,并且想编写一个Google应用程序脚本,将特定的工作表URL写入B2:B中的相应单元格。我的工作簿中的超链接都基于vlookup引用了TOC,并且只要B2:B中保存了正确的URL,就可以正常工作。

我将工作簿用作模板,在开发新项目时将其复制。每次复制工作簿时,链接都应更改。

1 个答案:

答案 0 :(得分:0)

工作表名称和工作表URL的列表

这将创建您的列表:

function getSheetNamesAndUrls() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var shts=ss.getSheets();
  var vA=[['SheetName','SheetURL']];//if you don't want headers remove this
  for(var i=0;i<shts.length;i++) {
    vA.push([shts[i].getName(),'docs.google.com/spreadsheets/d' + ss.getId() + '/edit#gid=' + shts[i].getSheetId()]);
  }
  sh.getRange(1,1,vA.length,vA[0].length).setValues(vA);//if you already have headers then make this 2,1,vA.length...
}