Я создал два отдельных сценария для выполнения двух отдельных действий на одном листе, и они должны выполняться независимо, но я не могу понять, как связать их оба с одной и той же электронной таблицей, поскольку в списке макросов появляется только один.
Я пытался создать оба сценария с помощью ссылки редактора сценариев на листе, и оба они появились в центре разработчика, но я просто не могу показать, что оба они отображаются в раскрывающемся списке макросов.
Это один сценарий для копирования содержимого исходного листа на целевой лист, который создается как часть этого сценария и прекрасно работает сам по себе.
var ss = SpreadsheetApp.getActive();
var sheetName = ss.getSheetByName("Results");
var CopyNew = function () {
var nm = ss.getSheetByName("NEW");
if(!nm){
var newSheet = ss.insertSheet("NEW");
var sourceRange = sheetName.getRange("A1:N100");
var targetRange = newSheet.getRange("A1:N100");
targetRange.setValues(sourceRange.getValues());
sourceRange.copyTo(targetRange, {formatOnly:true});
}
}
CopyNew();
Это отдельный скрипт, который должен выполняться после первого скрипта на исходном листе, чтобы очистить определенные столбцы, и опять-таки, он прекрасно работает сам по себе.
function ClearCells() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('G9:G100').activate();
spreadsheet.getActiveRangeList().clear({contentsOnly: true,
skipFilteredRows: true});
spreadsheet.getRange('K9:K100').activate();
spreadsheet.getActiveRangeList().clear({contentsOnly: true,
skipFilteredRows: true});
spreadsheet.getRange('N9:N100').activate();
spreadsheet.getActiveRangeList().clear({contentsOnly: true,
skipFilteredRows: true});
};
Мне бы хотелось, чтобы оба этих скрипта были доступны в раскрывающемся списке макросов, чтобы я мог запускать их независимо, но отображается только один.