Откройте таблицу 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 ответ
Вам нужно использовать правильный идентификатор для электронной таблицы. Один из способов найти это:
- Откройте содержащуюся папку на Google Диске
- Щелкните правой кнопкой мыши таблицу
- Выберите Получить ссылку
- Скопируйте показанный 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
- еще одна функция, которая находит идентификатор файла. Просто замените это своей собственной переменной или идентификатором файла.