将 Google 个工作表中所有子工作表 (2 ~ N) 的值累加到第一个子工作表
Accumulate values from all subsheets (2 ~ N) in Google Sheets to first subsheet
我想自动累积 AAA 中从 BBB 到 gg 以及更多子sheets 的所有值。
- 好像importrange()不能用在同一个sheet.
- 我想我必须使用应用程序脚本,但这对我来说很难。
试试这个方法
=query({bbb!A:F;ccc!A:F;ddd!A:F},"select * where Col1 is not null")
或通过脚本
function accumulate() {
var ss = SpreadsheetApp.getActiveSpreadsheet()
var sh = ss.getSheetByName('AAA')
sh.clearContents()
var index = sh.getIndex()
ss.getSheets().filter(s => s.getIndex() > index).forEach(function (sheet) {
var data = sheet.getDataRange().getValues()
sh.getRange(sh.getLastRow()+1,1,data.length,data[0].length).setValues(data)
SpreadsheetApp.flush();
})
}
我想自动累积 AAA 中从 BBB 到 gg 以及更多子sheets 的所有值。
- 好像importrange()不能用在同一个sheet.
- 我想我必须使用应用程序脚本,但这对我来说很难。
试试这个方法
=query({bbb!A:F;ccc!A:F;ddd!A:F},"select * where Col1 is not null")
或通过脚本
function accumulate() {
var ss = SpreadsheetApp.getActiveSpreadsheet()
var sh = ss.getSheetByName('AAA')
sh.clearContents()
var index = sh.getIndex()
ss.getSheets().filter(s => s.getIndex() > index).forEach(function (sheet) {
var data = sheet.getDataRange().getValues()
sh.getRange(sh.getLastRow()+1,1,data.length,data[0].length).setValues(data)
SpreadsheetApp.flush();
})
}