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

Excel实现相邻列两两分组无重复拼接的公式咨询

Excel实现相邻列两两分组无重复拼接的公式咨询

嗨,我来帮你搞定这个Excel数据拼接的需求~

你的需求是把原始表格里的相邻两列数据两两拼接成新单元格,而且每一组用完后跳过下一组(也就是1&2、3&4、5&6、7&8这样的分组,不会重复使用任何一列),对吧?下面分两种Excel版本给你对应的解决方法:

方法一:Excel 365/2021(支持动态数组)

如果你的Excel是较新版本,直接用动态数组公式就能一次性生成整行结果,不用逐个单元格拖动:
假设你的原始数据在A1:H2区域,在空白单元格(比如J1)输入以下公式:

=BYCOL(WRAPROWS(A1:H2,2),LAMBDA(x,CONCAT(x)))

公式解释:

  • WRAPROWS(A1:H2,2):把每行的8个数据拆分成每2个一组的小集合
  • BYCOL(...,LAMBDA(x,CONCAT(x))):逐个遍历这些分组,用CONCAT把每组的两个数值拼接成一个字符串
    输入后公式会自动填充整行的结果,下拉就能生成第二行的内容,完全符合你想要的输出效果。

方法二:旧版本Excel(不支持动态数组)

如果你的Excel是旧版本,可以用两种方式实现:

  1. 直接指定列拼接:
    在J1单元格输入:=CONCAT(A1,B1),L1输入=CONCAT(C1,D1),N1输入=CONCAT(E1,F1),P1输入=CONCAT(G1,H1),然后把这些公式下拉到第二行即可。

  2. 可拖动的通用公式:
    在J1单元格输入以下公式,然后横向拖动就能依次生成所有分组的拼接结果:

=CONCAT(INDEX(A1:H1,1,(COLUMN(A1)-1)*2+1),INDEX(A1:H1,1,(COLUMN(A1)-1)*2+2))

公式解释:

  • (COLUMN(A1)-1)*2+1:通过列号计算出每组第一个数的列位置(第一组是1,第二组是3,以此类推)
  • (COLUMN(A1)-1)*2+2:对应每组第二个数的列位置(第一组是2,第二组是4,以此类推)
  • INDEX定位到对应单元格,再用CONCAT拼接成字符串

备注:内容来源于stack exchange,提问作者Sumara

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.21 08:18:21