Excel 2010 将数据从多列/行移动到单行

Excel 2010 将数据从多列/行移动到单行

太令人沮丧了!我收到的数据是这样的:

a  1
a     2  2
a           3  3
b  1
b     2  2
b           3  3
b                 4  4
b                       5  5
b                             6  6

我需要它看起来像这样:

a  1  2  2  3  3
b  1  2  2  3  3  4  4  5  5  6  6

我有大约 30 列需要移动到其组中的顶部值,然后删除重复项(其中大约有 33 行重复项,试图将其减少到大约 8 行)。我已经在论坛上搜索了好几天,并尝试了一些代码。我在使用 VBA 时遇到了很多困难!!!!

同样的插图,但图形如下:

在此处输入图片描述     →     在此处输入图片描述

答案1

您可以在几秒钟内无需 VBA 即可实现此目的。只需按照以下步骤操作即可。

警告:此过程将覆盖您的原始数据。如果您想保留原始数据,请不要执行此操作。

  1. 选择您的数据,尽可能向右选择所有内容。

    在此处输入图片描述

  2. F5。单击Special...弹出的转到对话框。选择Blanks并单击OK。这将选择数据中的所有空白单元格。

    在此处输入图片描述

  3. 无需单击任何地方,将以下内容粘贴到公式栏中。请务必调整单元格引用以匹配您的数据。

    =如果($A2=$A1,C2,"")

    Ctrl+ Enter。这会将公式应用于所有选定的单元格。公式检查下一行在 A 列中是否具有相同的值。如果是,则返回紧接着下一行的值。如果不是,则不返回任何值。

    在此处输入图片描述

  4. 现在,再次选择所有数据,将其复制并Paste Special...返回Values到同一范围。这将删除您刚刚输入的公式,但会保留值。

  5. 最后,选择所有数据,转到数据功能区并选择Remove Duplicates。根据 A 列(值为 a 和 b 的列)删除重复项。

    在此处输入图片描述

    这将保留 A 列中每个值的顶行并删除其余值。您应该会得到您想要的内容。

    在此处输入图片描述

相关内容