将多列合并为一列

将多列合并为一列

在 Excel 中,我想将多个不连续的列的数据合并为一列(不包括标题,最好在另一张表上)。

例子:我有一张表格,其中包含多行姓名,其中包含最多三个选择的数据,以及下一列中该选择的任何选项。选择位于 C、E 和 G 列中;其中一些是空白的。选项位于 D、F 和 H 列中;其中一些是空白的。

根据这些数据,我首先想创建一个新工作表,将所有选项合并到一列,并在下一列中显示相应的选项。然后我想删除“选项”列中有空白单元格的所有行。

我目前正在手动将它们复制粘贴到新工作表中,然后找到任何空白单元格并删除它们各自的行。

最有效的方法是什么?

包含原始数据的预先格式化的表格:包含原始数据的预格式化表格

原始数据的预期结果:原始数据的预期结果

答案1

Power Query 有合并列的命令。结果可以放在新工作表中。

公式是另一种选择,类似于

=Sheet1!A2&Sheet1!C2&Sheet1!X2

抄下来。

答案2

我想建议简单的多阶段Index公式,帮助您将多列合并为一列。

在此处输入图片描述

  • 单元格中的公式T2,填写完毕。

    =IFERROR(INDEX($O$2:$O$6, ROWS(T1:$T$1)), IFERROR(INDEX($Q$2:$Q$7, ROWS(T1:$T$1)-ROWS($O$2:$O$6)), IFERROR(INDEX($S$2:$S$4, ROWS(T1:$T$1)-ROWS($O$2:$O$6)-ROWS($Q$1:$Q$7)), "")))
    
  • 另外,添加带有数据范围的工作表名称,例如,

IFERROR(INDEX(Sheet1!$O$2:$O$6,


編輯:

使用 OP 样本数据,这应该是 中的公式Sheet 2

在此处输入图片描述

  • V10单元格中的公式Sheet2,填写R那么自己的。

    =IFERROR(INDEX(Sheet1!X$2:X$7, ROWS(Sheet2!V9:$V$9)), IFERROR(INDEX(Sheet1!Z$2:Z$7, ROWS(Sheet2!V9:$V$9)-ROWS(Sheet1!X$2:X$7)), IFERROR(INDEX(Sheet1!AB$2:AB$7, ROWS(Sheet2!V9:$V$9)-ROWS(Sheet1!X$2:X$7)-ROWS(Sheet1!Z$2:Z$7)), "")))
    

注意: 您可以根据需要调整公式中的单元格引用。

答案3

假设您的工作表名称是公司。

您想要复制第 1 列、第 3 列、第 8 列

在空白工作表中:在A1输入公式=Company!A1,在B1在单元格中输入=Company!C1,C1进入=Company!H1

将输入的数据从 A1:C1 复制到下行以获得所需结果。

答案4

“做得过火了。”这绝对不是“巧干不苦干”方法的一部分。

这个问题只需要复制一对列的数据并将其粘贴到所需的输出列中,然后再复制下一对(移动到输出列的末尾以添加数据,而不是覆盖它!),依此类推,直到所有列都在所需的输出列中。

然后只需根据选项列进行排序,将空白移到列的一端或另一端(取决于您的 AZ 或 ZA 顺序选择)。选择所有有空白的行并删除数据。

如果这是一个动态列表,并且您需要定期执行此操作,您可能会喜欢公式化的方法,但是......也许甚至不会,因为这是一件非常简单的事情。

相关内容