То, что я пытаюсь сделать, находится в одной электронной таблице, посмотрите на лист «Источник», если ячейка в столбце B содержит сегодняшнюю дату, затем скопируйте ячейки между A: B для этой ячейки и вставьте в следующую пустую строку на листе."Место назначения".
Повторите для всех ячеек, содержащих сегодняшнюю дату.
Это работает, если я ищу текст, но по сути я пытаюсь сделать это автоматически каждый день, когда меняется дата, и я могу '• чтобы функция даты работала правильно.
По сути, в начале каждого дня она будет копировать сегодняшние данные с другого автоматизированного листа и вставлять их в следующую строку по сравнению со вчерашними данными на другом листе.
Я довольно новичок во всем этом, и любая помощь будет принята с благодарностью.
function copy_test() {
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Source"); //Source sheet
var ds = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Destination"); //Destination sheet
var testrange = ss.getRange('B:B'); //Column to check for today's date
var testvalue = (testrange.getValues()); //What value to check
var today = Utilities.formatDate(new Date(), 'GMT-0', 'dd/MM/yyyy');
var data = [];
var j = [];
//Condition to check in B:B, if true, copy the same row to data array
for (i=0;i<testvalue.length;i++) {
if (testvalue[i] == today) {
data.push.apply(data,ss.getRange(i+1,1,1,3).getValues());
//Copy matched ROW numbers to j
j.push(i);
}
}
//Copy data array to destination sheet
ds.getRange(ds.getLastRow()+1,1,data.length,data[0].length).setValues(data);
}
Я получаю следующую ошибку:
TypeError: Невозможно прочитать свойство "length" изне определено.(строка 20, файл «Первый тест»)
Изображение типа данных, которые я хочу скопировать