通过Google Apps脚本打开Goog​​le电子表格

时间:2014-02-16 16:06:46

标签: google-apps-script google-sheets

是否可以通过Google Apps脚本打开Goog​​le电子表格? 我正在尝试创建一种链接到电子表格中某个单元格的方法,但我无法通过脚本(部署为Web应用程序)来打开工作表。 我想打开电子表格,然后设置活动工作表和范围(我知道如何在电子表格打开时执行后者)。

提前致谢!

修改
这是我目前的代码:

function doGet(e){
  var ss = SpreadsheetApp.openById("[id]");
  SpreadsheetApp.setActiveSpreadsheet(ss);
  var sheet = ss.getSheetByName("Kunder");
  var row = Number(e.parameter.row); 
  var col = Number(e.parameter.col); 
  var range = sheet.getRange(row, col);

  //OPEN THE SPREADSHEET HERE

  SpreadsheetApp.setActiveSheet(sheet);
  SpreadsheetApp.setActiveRange(range);
}

2 个答案:

答案 0 :(得分:2)

https://tanaikech.github.io/2018/02/20/open-site-with-new-window-using-google-apps-script/找到了

function myFunction() {
  var js = " \
    <script> \
      window.open('https://tanaikech.github.io/', '_blank', 'width=800, height=600'); \
      google.script.host.close(); \
    </script> \
  ";
  var html = HtmlService.createHtmlOutput(js)
    .setHeight(10)
    .setWidth(100);
  SpreadsheetApp.getUi().showModalDialog(html, 'Now loading.'); // If you use this on Spreadsheet
//  DocumentApp.getUi().showModalDialog(html, 'Now loading.'); //  If you use this on Document
//  SlidesApp.getUi().showModalDialog(html, 'Now loading.'); //  If you use this on Slides
}

我更改了链接和窗口大小,以便可以在新标签中打开它(您也可以删除'_blank' ...)

      <script> \
        window.open('https://docs.google.com/spreadsheets/d/" + custFileID.id + "', '_blank'); \
        google.script.host.close(); \
      </script> \

custFileID是另一个查找文件ID的函数。只需将其替换为您自己的变量或文件ID。

答案 1 :(得分:1)

您需要为电子表格使用正确的ID。找到它的一种方法是:

  1. 在Google云端硬盘中打开包含文件夹
  2. 右键点击电子表格
  3. 选择获取链接
  4. 复制显示的网址
  5. 网址格式如下: https://drive.google.com/open?id=xoxoxoxoxoxoxoxoxoxoxoxo

    使用id参数值作为openById的参数,例如:

    var ss = SpreadsheetApp.openById(“xoxoxoxoxoxoxoxoxoxoxoxo”);