如何通过单击单元格来触发脚本

时间:2014-02-11 23:48:12

标签: google-apps-script

我有一个包含许多标签的Google电子表格,我正在尝试创建一个动态的索引标签。

到目前为止,这就是我正在做的事情:

function jumpToSheet() {
   var ss = SpreadsheetApp.getActiveSpreadsheet();
   var sheet = ss.getSheetByName(ss.getActiveCell().getValue());
   SpreadsheetApp.setActiveSheet(sheet);
}

function populateList() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var range = sheet.getRange("D:D");
  var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
  for (var i = 0; i < sheets.length ; i++){
    cell = range.getCell(i+1, 1);
    cell.setValue(sheets[i].getName());
  }
}

我在索引表上创建了两个图像。一个已经为其分配了jumpToSheet函数,另一个已经为其分配了populateList。

我点击第二张图片,它会在列D中填入所有标签的列表。 (只是一次性的事情或每当添加/删除标签时)

要导航,我会在此列中按名称选择一个标签,然后点击第一张图片,它会将我带到那里。

我有两个问题:

如何进行单击操作?目前我必须单击包含要跳转到的选项卡名称的单元格,然后单击图像。我想尽可能点击单元格。或者只需要单击一下的任何其他解决方案。

如何使用键盘返回索引选项卡?我知道我可以使用ctrl + shift + pageup / down跳转或点击左下方的水平线图标并选择顶部标签。但这对我来说有点慢。是否有返回第一个标签的快捷方式?或者其他一些方法可以更快地完成(最好使用键盘)

1 个答案:

答案 0 :(得分:0)

单击一下就无法完成。至少2次点击。 使用两个命令创建菜单,比单击图像更不笨拙。 您可以使用hiperlink()放置一个加油服务网址,但即使这样也需要2次点击才能转到链接,并且比菜单选项要慢。