У меня есть запрос, касающийся скрипта Google App и операторов If.
Я перенес данные из своего рекламного аккаунта на лист Google.Затем я хочу, чтобы несколько листов извлекли конкретные данные из этого.Поэтому я пытаюсь сделать один лист источником всех данных.Затем я могу выбрать части данных, которые мне нужны для каждого из моих отчетов.
Основным является получение диапазона, в котором день недели == сегодня.
Я пытался сделатьэто путем добавления проверочной переменной, которая затем передается в цикл for, если переменная day == dayName.
В настоящее время у меня возникает проблема с выполнением из-за истечения времени ожидания.Это наводит меня на мысль, что у меня проблема с тем, как я это сделал.
Набор данных состоит из 21 тыс. Строк: A - дата, B - день недели, C - кампания и т. Д. До столбцаI.
Я все еще очень новичок в игре сценариев, и любая помощь действительно ценится.
Причина, по которой я хочу сделать это таким образом, заключается в том, что я изо всех сил пытался включить гдезаявление в сценарии рекламы для фильтрации по DayOfWeek.Тогда я подумал, что это может быть альтернативным решением.
Спасибо, Лиам
function myFunction() {
//This is the days of the week for the today lookup
var days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
//This is today's date
var end = new Date().toISOString().slice(0,10);
//This supplies the current day of week
var dow = new Date(end);
var dayName = days[dow.getDay()];
var sss = SpreadsheetApp.openById('SheetID'); //ID of the sheet
var ss = sss.getSheetByName('googleData'); //Sheet name
var range = ss.getRange('A1:I'); //The range to copy
var check = ss.getRange('B2:B').getValues(); The range to if statement against
var data = range.getValues();
var tss = SpreadsheetApp.openById('SheetID'); //destination sheet ID
var ts = tss.getSheetByName('usedData'); //Destination sheet name
for (var i=0;i<check.length; i++) {
if(check[i]==dayName) {
ts.getRange(1, 1, data.length, data[0].length).setValues(data); //you will need to define the size of the copied data see getRange()
}
}
}