如何在Google Sheets中合并多个IMPORTRANGE数据并去除空单元格?
公式失效核心问题
- IMPORTRANGE未完成授权:需先单独运行每个IMPORTRANGE公式,完成源表格访问授权,直接嵌套在数组或QUERY中时授权弹窗无法正常触发,会直接返回错误。
- 空值判断逻辑不兼容:
Col1 != ''仅能过滤完全为空的文本单元格,对数值型空值、带不可见空格的假空单元格无效,需改用Col1 IS NOT NULL作为过滤条件。 - 数组语法存在冗余:第二个IMPORTRANGE末尾多写了多余分号,部分Google Sheets版本会识别为语法错误。
可行解决方案
步骤1:完成IMPORTRANGE授权
在空白单元格分别运行两个IMPORTRANGE公式,待弹出「允许访问」提示后点击确认,完成授权后可删除测试公式:
=IMPORTRANGE("[你的源表格URL]", "Sheet1!A1:A")
=IMPORTRANGE("[你的源表格URL]", "Sheet1!B1:B")
步骤2:使用修正后的拼接公式
=QUERY( { IMPORTRANGE("[你的源表格URL]", "Sheet1!A1:A"); IMPORTRANGE("[你的源表格URL]", "Sheet1!B1:B") }, "SELECT Col1 WHERE Col1 IS NOT NULL", 0 )
注:如果源数据第一行是表头,将公式最后一个参数0改为1即可自动识别表头,避免表头被当成普通数据处理。
性能优化建议
如果数据量较大,可将导入范围从整列改为最大可能的有效行数范围(如A1:A2000、B1:B2000),避免加载数千个无效空单元格,大幅提升公式运行速度。
内容的提问来源于stack exchange,提问作者Marius Hempel
相关产品推荐
相关产品推荐

