Откройте таблицу Google с помощью скрипта Google Apps.

Можно ли открыть электронную таблицу Google с помощью скрипта Google Apps?
Я пытаюсь создать способ ссылки на определенную ячейку в электронной таблице, но мне не удается открыть лист из сценария (развернутого как веб-приложение).
Я хочу открыть электронную таблицу, а затем установить активный лист и диапазон (я знаю, как сделать последний, когда электронная таблица открыта).

Заранее спасибо!

РЕДАКТИРОВАТЬ
Вот мой текущий код:

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);
}

1 ответ

Вам нужно использовать правильный идентификатор для электронной таблицы. Один из способов найти это:

  1. Откройте содержащуюся папку на Google Диске
  2. Щелкните правой кнопкой мыши таблицу
  3. Выберите Получить ссылку
  4. Скопируйте показанный URL

URL-адрес будет иметь вид: https://drive.google.com/open?id=xoxoxoxoxoxoxoxoxoxoxoxo

Используйте значение параметра id в качестве аргумента для openById, например:

var ss = SpreadsheetApp.openById ("xoxoxoxoxoxoxoxoxoxoxo");

Нашел это на 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- еще одна функция, которая находит идентификатор файла. Просто замените это своей собственной переменной или идентификатором файла.

Другие вопросы по тегам