我有以下脚本,我在这里拼凑了各种来源。它意味着在一个充满Google文件ID的电子表格中从B列中获取一个列表,然后访问这些文件并复制各个文件中4个页面中的每个文件中的一系列数据并放入主页。
单个组件可以工作,但是一旦我输入我的特定名称并将它们合并,我就有错误:
缺少)参数列表后。 (第14行,文件“ID列表循环和复制”)
第14行是其中}}}}
的最后一行!
带有Ids的电子表格是“ZZ每日时间表存档文件夹的列表”和要复制到的范围的电子表格是“档案”以防万一我错过了什么。
function getDataToMaster2() {
var sheetIds = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("listing
of folder ZZ Daily Schedules Archived");
var values = sheetIds.getRange('B:B').getValues();
var idList = values.map(function (row) { return row[0]; }).filter(function
(id) { return id; });
// Loop through and open Spreadsheet files by `id`
for (var i = 0; i < idList.length; i++) {
var sheets = SpreadsheetApp.openById(idList[i]).getSheets();
// Perform an action on each sheet within the open Spreadsheet
sheets.forEach(function (e) {
var data = e.getRange('A7:U38').getValues();
var sn = ['AM trip','PM trip','Pool / Beach','Night Dive']
getSheetByName (sn[innerLoopIndex])
Logger.log("sheet name: %s", e.getSheetName());
});
}}
非常感谢任何帮助。
答案 0 :(得分:1)
filter()
未关闭
function getDataToMaster2() {
var sheetIds = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("listing of folder ZZ Daily Schedules Archived");
var values = sheetIds.getRange('B:B').getValues();
var idList = values.map(function (row) { return row[0]; }).filter(function (id) { return id; });
// Loop through and open Spreadsheet files by `id`
for (var i = 0; i < idList.length; i++) {
var sheets = SpreadsheetApp.openById(idList[i]).getSheets();
// Perform an action on each sheet within the open Spreadsheet
sheets.forEach(function (e) {
var data = e.getRange('A7:U38').getValues();
Logger.log("sheet name: %s", e.getSheetName());
// sheetMaster.insertRowsAfter(lastRow, data.length);
// sheetMaster.getRange(lastRow + 1, 2, data.length, data[0].length).setValues(data);
});
}
}
另外,getSheetByName()将返回null
,除非完整的单页名称实际为:
'AM trip','PM trip','Pool / Beach','Night Dive'