如何用公式合并多个Google Sheets指定工作表并实现自动更新?
实现Google Sheets多指定工作表自动合并同步
完全可以实现自动同步的多文件指定工作表合并,以下是针对你问题的具体解决方法:
1. 指定导入目标工作表
IMPORTRANGE支持直接指定目标工作表,只需在第二个参数中加上工作表名称,格式为"工作表名!数据范围"。比如你要导入第二个名为「供应商数据」的工作表,公式写法如下:
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxx/edit?usp=sharing"; "供应商数据!A1:R999")
2. 多文件内容末尾衔接合并
根据Google Sheets版本,有两种高效实现方式:
方式一:用VSTACK直接堆叠(新版Sheets推荐)
VSTACK可以将多个IMPORTRANGE的结果垂直拼接,自动在一个文件内容后衔接另一个,公式示例:
=VSTACK( IMPORTRANGE("文件1链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件2链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件3链接"; "指定工作表!A1:R999") )
如果需要过滤空行,可嵌套FILTER:
=VSTACK( FILTER(IMPORTRANGE("文件1链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件1链接"; "指定工作表!A1:A999")<>""); FILTER(IMPORTRANGE("文件2链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件2链接"; "指定工作表!A1:A999")<>"") )
方式二:用QUERY合并并过滤(兼容旧版)
通过数组语法将多个IMPORTRANGE结果合并,再用QUERY过滤空行,公式示例:
=QUERY({ IMPORTRANGE("文件1链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件2链接"; "指定工作表!A1:R999"); IMPORTRANGE("文件3链接"; "指定工作表!A1:R999") }; "SELECT * WHERE Col1 IS NOT NULL")
注意事项
- 首次使用每个文件的IMPORTRANGE时,需要点击单元格弹出的「允许访问」授权,授权后才能正常同步数据;
- 源文件数据更新后,合并表会自动同步(可能有几分钟延迟);
- 合并后的工作表可以直接用于你的对比公式,只需将公式中的源表名称替换为合并表的名称即可。
内容的提问来源于stack exchange,提问作者Agnieszka Witkowska
相关产品推荐
相关产品推荐

