Я пытаюсь редактировать макрос, который копирует данные из вложенных листов IOSRef, AndroidRef, WebRef, BetaRe на основной лист (все они принадлежат одному листу). НО я хочу, чтобы он сначала совпадал с датами и соответственно копировал данные.
Я попытался создать массив дат основного листа и сопоставить его с 7-дневным диапазоном дат на вложенных листах и поместить его в цикл. И таким образом создали 4 таких цикла, которые видны в коде. Сценарий выполняется без ошибок, но не выполняет никаких действий.
function UpdateMacro() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Consolidated'), true);
var data=spreadsheet.getActiveSheet().getRange(2,1,1,321);
//Date array named data //
for(var nn=0;nn<data.length;nn++){
if (data[0][nn]==spreadsheet.getRange('IOSRef!B2')){
spreadsheet.setCurrentCell(data[i][nn]);
spreadsheet.getCurrentCell().offset(1, 0).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('IOSRef'), true);
// Above 3 lines for copying the data //
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Consolidated'), true);
spreadsheet.getRange('IOSRef!B3:I6').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
}
else{spreadsheet.setCurrentCell('NULL');};
}; //to Copy from iOS to Consolidated
for(var nn=0;nn<data.length;nn++){
if (data[0][nn]==spreadsheet.getRange('AndroidRef!B2')){
spreadsheet.setCurrentCell(data[i][nn]);
spreadsheet.getCurrentCell().offset(5, 0).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('AndroidRef'), true);
spreadsheet.getCurrentCell().offset(2, 1, 4, 8).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Consolidated'), true);
spreadsheet.getRange('AndroidRef!B3:I6').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
}; //to Copy from Android to Consolidated
for(var nn=0;nn<data.length;nn++){
if (data[0][nn]==spreadsheet.getRange('WebRef!B2')){
spreadsheet.setCurrentCell(data[i][nn]);
spreadsheet.getCurrentCell().offset(9, 0).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('WebRef'), true);
spreadsheet.getCurrentCell().offset(2, 1, 4, 8).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Consolidated'), true);
spreadsheet.getRange('WebRef!B3:I6').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
}; //to Copy from Web to Consolidated
for(var nn=0;nn<data.length;nn++){
if (data[0][nn]==spreadsheet.getRange('BetaRef!B2')){
spreadsheet.setCurrentCell(data[i][nn]);
spreadsheet.getCurrentCell().offset(13, 0).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('BetaRef'), true);
spreadsheet.getCurrentCell().offset(2, 1, 4, 8).activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Consolidated'), true);
spreadsheet.getRange('BetaRef!B3:I6').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
};