Страницы: 1
RSS
Работа скрипта только на одном листе
 
Добрый вечер, сразу извиняюсь, что пишу вопрос о Гугл таблицах на этом форуме, но надеюсь, что кто нибудь поможет, так как код приведенный ниже я нашел именно здесь, только немного доработал под себя.

Есть такой скрипт, он срабатывает на всех листах таблицы, мне нужно что бы он работал только на первом (Лист1).

Код
function onEdit(e) {
    var sheet = e.source.getActiveSheet();
    var idCol = e.range.getColumn();
    var idRow = e.range.getRow();
    var date = new Date();
    var date = Utilities.formatDate(date, 'Europe/Kiev', 'dd-MM-yyyy\' \'HH:mm:ss\' \'');
    if ( idCol == 5 ) {     
    sheet.getRange(idRow, idCol - 1).setValue(date.toString());
    }
};

Буду благодарен за помощь.
Изменено: Alex2323 - 03.12.2017 23:47:52
 
Цитата
Alex2323 написал:
вопрос о Гугл таблицах
Вот и ищите на профильных форумах - Excel тут причём?
 
Alex2323, после первой строки проверьте, что sheet - это первый лист, и если нет, то выход из функции. А ещё лучше такую проверку делать не в самой функции, а там, откуда её вызываете. Подробности синтаксиса и API смотрите на профильных ресурсах.
 
Цитата
Irregular Expression написал:
проверьте, что sheet - это первый лист
Я как раз и не знаю как это проверить)  
 
Цитата
Irregular Expression написал: Подробности синтаксиса и API смотрите на профильных ресурсах.
Здесь макросы на другом языке пишутся.
 
Доброе время суток
Цитата
Alex2323 написал:
Я как раз и не знаю как это проверить)  
У Google тоже есть справка по языку Apps Script ответ
 
Может кому пригодится.
Код
function onEdit(e) {
    if(!e || e.range.getSheet().getName() !== "Лист1")
    return;
    var sheet = e.source.getActiveSheet();
    var idCol = e.range.getColumn();
    var idRow = e.range.getRow();
    var date = new Date();
    var date = Utilities.formatDate(date, 'Europe/Kiev', 'dd-MM-yyyy\' \'HH:mm:ss\' \'');
    if ( idCol == 5 ) {    
    sheet.getRange(idRow, idCol - 1).setValue(date.toString());
    }
};
Страницы: 1
Читают тему
Наверх