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

Google Sheets中如何按列对交替合并表格数据?

解决Google Sheets中按行内列组堆叠数据的问题

原始数据

ABCD
1234
5678
9101112

当前公式及结果

使用公式 ={A1:B3;C1:D3} 会先堆叠A1:B3的所有行,再堆叠C1:D3的所有行,得到如下结果:

EF
12
56
910
34
78
1112

期望结果

需要按行内分组堆叠,即先显示第1行的A:B,再显示第1行的C:D,接着第2行的A:B、C:D,以此类推:

EF
12
34
56
78
910
1112

可行解决方案

方法1:使用REDUCE遍历行合并

=LET(
    row_range, A1:A3,
    combined, REDUCE("", row_range, LAMBDA(acc, current_row, {acc; OFFSET(current_row, 0, 0, 1, 2); OFFSET(current_row, 0, 2, 1, 2)})),
    DROP(combined, 1)
)
  • 原理:用REDUCE遍历每一行,依次将当前行的A:B和C:D区域添加到结果中,最后用DROP移除初始的空行。

方法2:使用INDEX和SEQUENCE定位单元格

=INDEX(A1:D3, ROUNDUP(SEQUENCE(6)/2, 0), IF(MOD(SEQUENCE(6), 2)=1, {1,2}, {3,4}))
  • 原理:SEQUENCE(6)生成1-6的序列,ROUNDUP(SEQUENCE(6)/2,0)将序列转换为1,1,2,2,3,3,对应原始数据的行号;IF(MOD(...)控制列的选择,奇数行选A:B(列1-2),偶数行选C:D(列3-4)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 15:10:39