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

Google Sheets中合并多组列对为两列的公式需求

Google Sheets 四列数据合并为两列的可行方案

原始数据

姓名1数值1姓名2数值2
John22Alex37
Jack15Jake88

目标格式

姓名数值
John22
Alex37
Jack15
Jake88

最直接的数组拼接方案

用Google Sheets的数组拼接语法,直接把两组数据纵向堆叠,这是最高效的方法:

=ArrayFormula({A2:B3; C2:D3})
  • 语法说明:{区域1; 区域2} 代表把两个区域纵向合并,分号是纵向堆叠的分隔符
  • 如果需要自动带上表头,可写成:
=ArrayFormula({"姓名", "数值"; A2:B3; C2:D3})

如果你的数据行数不固定,想自动适配所有非空行,可用动态范围写法:

=ArrayFormula(
  {
    A2:INDEX(A:A, COUNTA(A:A)), B2:INDEX(B:B, COUNTA(B:B));
    C2:INDEX(C:C, COUNTA(C:C)), D2:INDEX(D:D, COUNTA(D:D))
  }
)

兼容新版Sheets的简化方案(STACK函数)

如果你的Google Sheets是新版,支持STACK函数,写法更直观:

=STACK(A2:B3, C2:D3)
  • 这个函数直接将多个指定区域纵向堆叠,无需手动写数组语法
  • 带表头的写法:
=STACK({"姓名", "数值"}, A2:B3, C2:D3)

故障排查(针对你之前ArrayFormula失败的情况)

你之前用ArrayFormula没成功,大概率是没用到数组拼接的{}语法。Sheets中要合并多个区域,必须用{}包裹,分号用于纵向合并,逗号用于横向合并,再配合ArrayFormula让公式自动扩展到所有行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 15:07:38