将数据从多个不同的 Google 工作簿导入到一个主工作簿
Import Data from Multiple Different Google Workbooks to One Master Workbook
我正在寻找一种将数据从 57 Google Sheets 文件/工作簿导入到一个母版 Google Sheet 的方法。例如,我有 57 位老师 - 每个老师都有自己的 Google Sheet 文档。我在观察收集数据时使用他们的文档。我需要一种方法来获取我从他们的每个单独文件中收集的数据,将其放入我的主文件中并将其与我的 sheet 中的名称匹配,而不必为每个文件使用 IMPORTRANGE 函数。这可以通过脚本实现吗,或者有更简单的方法吗?
尝试(更改列表中的 ID)
const ids = [
'1T7ixa-JGLgh8oZ19mWUy3Oo4UzbivflUlwL9zLGVkgg',
'16uEeVNEBzBbGVTgKa98Ob7Wcy5mof9n6mU-yKIZ0fKM',
'1d3ZHi1H0uUMU7jYsrwses66ULkmM4bFHyDn8RFtAlkk'
]
function myFunction() {
let result = []
ids.forEach((id, i) => {
let [headers, ...data] = SpreadsheetApp.openById(id).getSheets()[0].getDataRange().getValues()
if (i == 0) { result.push(headers.flat()) }
data.forEach(r => result.push(r))
})
var master = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('myMasterSheet')
master.clearContents()
master.getRange(1, 1, result.length, result[0].length).setValues(result)
}
如有必要,您可以使用 sheet 来存储 ID
我正在寻找一种将数据从 57 Google Sheets 文件/工作簿导入到一个母版 Google Sheet 的方法。例如,我有 57 位老师 - 每个老师都有自己的 Google Sheet 文档。我在观察收集数据时使用他们的文档。我需要一种方法来获取我从他们的每个单独文件中收集的数据,将其放入我的主文件中并将其与我的 sheet 中的名称匹配,而不必为每个文件使用 IMPORTRANGE 函数。这可以通过脚本实现吗,或者有更简单的方法吗?
尝试(更改列表中的 ID)
const ids = [
'1T7ixa-JGLgh8oZ19mWUy3Oo4UzbivflUlwL9zLGVkgg',
'16uEeVNEBzBbGVTgKa98Ob7Wcy5mof9n6mU-yKIZ0fKM',
'1d3ZHi1H0uUMU7jYsrwses66ULkmM4bFHyDn8RFtAlkk'
]
function myFunction() {
let result = []
ids.forEach((id, i) => {
let [headers, ...data] = SpreadsheetApp.openById(id).getSheets()[0].getDataRange().getValues()
if (i == 0) { result.push(headers.flat()) }
data.forEach(r => result.push(r))
})
var master = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('myMasterSheet')
master.clearContents()
master.getRange(1, 1, result.length, result[0].length).setValues(result)
}
如有必要,您可以使用 sheet 来存储 ID