如何将两个 Excel 列合并为一个(另一种方式)

cla*_*aws 6 microsoft-excel-2007 microsoft-excel microsoft-excel-2010 microsoft-excel-2013

我有一个列表,如AB列所示,我想合并如下所示D

在此处输入图片说明

我怎样才能做到这一点?

在这里,字母 (a,b,c,d,e,f,g,h) 仅用作占位符。我真正需要的column D是 A1,B1,A2,B2,A3,B3,A4,B4。

def*_*ale 8

一个不太容易维护的基于公式的解决方案是在 D 中使用以下公式:

=INDEX($A$1:$B$5,QUOTIENT(ROW()+1,2),IF(MOD(ROW(),2)=0,2,1))
Run Code Online (Sandbox Code Playgroud)

让我添加格式并分部分解释它:

=INDEX(
   $A$1:$B$5,
   QUOTIENT(ROW()+1,2),
   IF(MOD(ROW(),2)=0,2,1)
   )
Run Code Online (Sandbox Code Playgroud)

因此,INDEX将按坐标返回范围内的单元格。参数是:

  1. $A$1:$B$5 - 范围,包含需要的两列。
  2. QUOTIENT(ROW()+1,2) - 当前行号除以 2 的整数除法。这给出了从 (1) 范围内的行号。
  3. IF(MOD(ROW(),2)=0,2,1)- 来自 (2) 的整数除法的余数。这给出了 (1) 范围内的列号。

该解决方案不是很灵活,需要稍微改进以支持:

  • 两列以上
  • 非相邻列
  • 结果在特定范围内(例如,从 D5 开始)