2016-10-12 5 views
-2

Имея проблемы с получением следующих действий.
Намерение было на редактировании для передачи информации из конкретной ячейки или ячеек активного листа в определенные ячейки на отдельном листе. Примечание: Я новичок в Google листовonEdit (e) DriveApp.getFileById

function onEdit(e) { 
    var source = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Working"); 
    var cell = source .getActiveCell();  
    if (cell.getRow() == 9 && cell.getColumn() == 2) { 
     var target = DriveApp.getFileById("1biaIVlafaNQTHjtR8ctASCpDmC2O1wwfJfAUCmzIztI") 
      .getSheetByName("Master_Sheet"); 
     target.getRange("A1").setValue(cell.getValue()); 
    } 
} 
+0

Я занимаюсь этим вопросом, так как он не показывает ** никаких исследований. Пожалуйста, примите [тур] и проверьте [ask]. –

ответ

0

Причина это не работает, потому что вы используете onEdit(). Это простой триггер, который будет срабатывать при каждом редактировании листа. Поскольку простые триггеры не могут выполнять операции, требующие авторизации, вы ограничены работой только в Таблице и не можете получить доступ к другим файлам.

Читайте об ограничениях here

+0

Я не думаю, что это так. он может сделать больше с выражением if. – James

0

Я теперь в состоянии передавать информацию на целевой лист, используя следующий код.

function myFunction() { 
var sourceSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Source"); 
    var sourceData = sourceSheet.getRange("A3:C3").getValues(); 
    sourceData.splice(0,1); // Remove header 
    var targetSS = SpreadsheetApp.openById("1pyJzZ86WDh2FNXFufUAt2SkAUod32i7AzvG0EKmnvEU").getSheetByName("Destination"); 
    var targetRangeTop = targetSS.getLastRow(); // Get # rows currently in target 
    targetSS.getRange(targetRangeTop+1,1,sourceData.length,sourceData[0].length).setValues(sourceData); 

}; 
+0

Jens; спасибо за редактирование. – James

+0

Теперь, когда информация может быть перенесена на другой лист, мне нужно обратиться к исходной проблеме. отправка информации из «исходного» диапазона листов «A3: AA3» на лист «Целевой», где целевая строка = «исходный» лист «B2» и целевые столбцы «AA: AB». Я предполагаю, что столбец будет обрабатываться с помощью функции Offset(). просто не уверен, как это сделать. – James

Смежные вопросы