You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中合并两个可变长度区域为单个列表?

解决Google Sheets两列可变长度数据合并问题

嘿,我来给你几个靠谱的解决方案,完全适配你这种可变长度列合并成连续列表的需求:

方案1:直接数组拼接+过滤空值

这是最基础也最灵活的方法,利用Google Sheets的数组拼接语法把两列上下堆叠,再过滤掉空行:

=FILTER({A:A; B:B}, {A:A; B:B}<>"")
  • 原理:{A:A; B:B} 是把A列和B列按顺序上下拼接成一个新数组;
  • FILTER 函数用来剔除拼接后数组里的空白单元格,避免最后出现一堆空行;
  • 优势:不管A、B列后续新增多少数据,公式都会自动包含进去,完全适配可变长度的需求。

方案2:用FLATTEN函数简化操作

如果你觉得数组拼接写起来麻烦,FLATTEN 函数可以直接把多列数据“压平”成一维列表,再配合过滤更简洁:

=FILTER(FLATTEN(A:B), FLATTEN(A:B)<>"")
  • 原理:FLATTEN(A:B) 会把A、B两列的所有数据按从上到下、从左到右的顺序转换成一列;
  • 同样用FILTER 去掉空值,这个方法哪怕你以后要合并3列、4列,只需要把A:B改成A:C这类范围就行,扩展性更强。

方案3:QUERY函数筛选合并

如果你习惯用QUERY的SQL式语法,也可以这么写:

=QUERY({A:A; B:B}, "select Col1 where Col1 is not null")
  • 原理:先拼接A、B列成数组,再用QUERY的筛选条件只保留非空的单元格,输出成连续列表;
  • 好处是如果后续需要对合并后的列表做额外筛选(比如只保留包含特定字符的内容),可以直接在QUERY语句里扩展条件。

这些方法都不需要担心列的长度变化,完全自动化处理,你可以根据自己的使用习惯选一个就行~

内容的提问来源于stack exchange,提问作者Marek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:28:19