我有一个 Google 电子表格,其中包含 3 张包含来自不同国家 ( Country1
, Country2
, Country3
) 的数据和第 4 张 ( Summary
) 应该将这些数据附加在一起的表格。所有工作表中的列都相同。
我已经知道我可以像这样组合它们:
=QUERY({Country1!A2:G;Country2!A2:G;Country3!A2:G}; "SELECT * WHERE Col1 IS NOT NULL")
但是,我需要一种方法将任意数量的工作表组合在一起,而无需修改公式。所以,如果Country4
被添加,这也应该被附加。我怎样才能做到这一点?
如果有帮助,我有一个Settings
包含所有国家/地区名称(以及国家/地区表名称)的列的工作表。如果在工作Settings
表中添加了国家/地区,我有一个脚本可以动态生成新工作表。如有必要,此脚本还可以更新工作表中的公式Summary
。
您可以使用附加的脚本为此动态创建公式。
function generateFormula() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheets = ss.getSheets();
var formula = "=QUERY({";
for (var i = 0; i < sheets.length; i++) {
var name = sheets[i].getName();
if (name != "Settings" && name != "Summary") {
formula = formula + name + "!A2:G;";
}
}
formula = formula.slice(0, -1) + '}, "SELECT * WHERE Col1 IS NOT NULL", 0)'
ss.getSheetByName("Summary").getRange("A1").setFormula(formula);
}
这只是执行此操作的一种可能方法,尽管我不相信没有脚本就可以随意设置。不管怎样,我希望这对你有帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句