Я довольно новичок в программировании с помощью Google Apps Script.
Я пытаюсь создать функцию, которая будет создавать метку времени в Google Sheet, когда пользователь нажимает кнопку, но только если адрес электронной почты пользователя содержится в пределах диапазона на другом листе рабочей книги.
Для справки: вкладка, в которой указаны адреса электронной почты пользователя, называется "создателями", а список находится в столбце A.
В настоящее время функция работает, когда адрес электронной почты пользователя находится в ячейке A2 списка, однако, если он находится где-либо еще в списке (скажем, A3), сценарий выдает ошибку, которую я кодировал.
Всякий раз, когда пользователь авторизован ( в списке) код должен поставить отметку на другой вкладке с указанием адреса электронной почты, даты и времени их действия.
Вот мой код:
var ss = SpreadsheetApp.getActiveSheet();
var usr = Session.getActiveUser().getEmail();
var DateTime = new Date();
var emails = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Makers").getRange("A2:A").getValues();
for (var i=0;i<emails.length;i++) {
if (emails[i][0] === usr){
ss.getRange('B3').setValue(usr);
ss.getRange('C3').setValue(DateTime).setNumberFormat('dd/MM/yyyy HH:mm:ss');
return;
} else {
SpreadsheetApp.getUi().alert('You are not authorised to perform that action');
throw new Error('You are not authorised to perform that action');
}
}
Любая помощь будет принята с благодарностью.