2016-10-31 2 views
0

Я хотел бы запустить триггер с onEdit, если событие (редактирование ячейки) происходит в определенном диапазоне листа (не все листы)? Пример: я хочу только вызвать, если отредактирована ячейка диапазона под названием «trgRng» (C10: C250) Sheet_1.Google Spreadsheet onEdit - ограничение на диапазон

я закодированы, как показано ниже, но это вызовет все листы не только определенного диапазона конкретного листа

function onEdit(e) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 

    // source sheet 
    var sSh = ss.getSheetByName("Diario"); 
    var aCell = sSh.getActiveCell().getValue(); 

    // destiny sheet - set value from source sheet 
    var dSh = ss.getSheetByName("Auxiliar"); 
    dSh.getRange('L4').setValue(aCell); 
} 

Возможно ли это? Как?

ответ

0

Я уже решить:

{ 
function onEdit(e) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 

    // source sheet 
    var sSh = e.source.getActiveSheet(); 
    var maxRow = sSh.getMaxRows(); 
    var name = sSh.getName(); 

    var rng = e.range; 
    var rngCol = rng.getColumn(); 

    if (sSh.getName() == "Diário" && rng.getColumn() == 8) { 

     ss.getSheetByName("Diário"); 
     var aCell = sSh.getActiveCell().getValue(); 

     // target sheet 
     var shD = ss.getSheetByName("Auxiliar"); 
     shD.getRange('L4').setValue(aCell); 
    } 
    } 
} 
Смежные вопросы