@Ilyas_B

Как в макросе GS прописать условие по имени вкладки?

Имеется вот такой макрос, который присылает мне уведомление на почту каждый раз, когда в таблице, в столбце А, вносят изменения, но в таблице есть несколько вкладок, а нужна только одна, подскажите пожалуйста как мне прописать условие, чтобы уведомления приходили только при изменении с вкладки "Проверка"?
П.С. Макрос написан без знаний JS, интуитивно и на салфетке, поэтому может содержать вырвиглазные или ненужные строки, если будут замечания - буду рад выслушать.
function Call(){
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var range = sheet.getActiveRange();
  var data = range.getValues();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var cell = ss.getActiveCell().getA1Notation()
  if(range.getColumn() == 1 ){
    if(Session.getActiveUser()!=('log1@stark-automotive.com' || 'alisa.asatryan@stark-automotive.com')){
  MailApp.sendEmail('log1@stark-automotive.com', 'КМ внес поставку', 'в ячейку '+cell+' менеджером '+Session.getActiveUser());
} 
}
}
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
ProgrammerForever
@ProgrammerForever Куратор тега Google Apps Script
Учитель, автоэлектрик, программист, музыкант
Вот так:
var sheet = SpreadsheetApp.getActiveSpreadsheet();
const sheetName = sheet.getName(); // Тут получаем название вкладки
//...
if ((range.getColumn() == 1 )&&(sheetName==="Лист1")){//Проверяем
    if(Session.getActiveUser()!=('log1@stark-automotive.com' || 'alisa.asatryan@stark-automotive.com')){
  MailApp.sendEmail('log1@stark-automotive.com', 'КМ внес поставку', 'в ячейку '+cell+' менеджером '+Session.getActiveUser());
} 
}

Или так:
var sheet = SpreadsheetApp.getActiveSpreadsheet();
if (["Лист1","Лист2"].indexOf(sheet.getName())==-1) return;//Список листов на которых скрипт работает
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы