У меня есть файл Google Sheets, который служит пустым шаблоном, который пользователи затем копируют для настройки. Все они сохраняются в GDrive той же организации.
В настоящее время в пустом шаблоне есть GAS, который работает правильно, чтобы автоматически обновлять sh отчет BigQuery с использованием соединителей данных (refre sh при открытии). Однако когда пользователи делают копию файла, GAS больше не выполняет запрос после повторного открытия этого скопированного файла. Ничего не изменилось с именами вкладок и т. Д. c., Только с именем файла Sheets.
Есть мысли о том, как настроить приведенный ниже код, чтобы GAS refre sh на всех копиях при открытии?
Заранее спасибо !!
ГАЗ:
function email(){
var id=SpreadsheetApp.getActiveSpreadsheet().getId()
var ss=SpreadsheetApp.openById(id);//need spreadsheet id
var sh=ss.getSheetByName("New/Reorder Email");//when you open up a spreadsheet like this the active sheet is alway ss.getSheets()[0] the left most sheet so you should user get sheet by name instead.
var rg=sh.getRange('A2:F2');
var email=rg.getValues()[0];
if (email[4]!="E-MAIL SENT") {
GmailApp.sendEmail(email[0], email[1], email[2]);
sh.getRange('E2').setValue("E-MAIL SENT");
}
}
function doGet() {
return HtmlService.createHtmlOutputFromFile('sendemail');
}
HTML:
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<input type="button" value="Send" onClick="google.script.run.email();" />
</body>
</html>