Excel:如何使用分组列将几行稀疏数据折叠成一行

Excel:如何使用分组列将几行稀疏数据折叠成一行

好的,我想把当前布局进入这个布局

如您所见,我想删除重复的标题和空单元格。我正在考虑创建一个公式,在第一行之后的每七行中删除标题并将其他单元格上移,但我不知道如何编写它,或者在 Excel 中是否可以执行类似的操作?会有数百行,所以我无法手动执行此操作。我在 Mac 上使用 Excel 2016。

提前致谢!

答案1

选择数据中的任何单元格使用数据>获取和转换数据>从表/范围创建 PowerQuery。

在 Power Query 编辑器中,使用 Home>Transform>Group By 并按如下方式配置:

在此处输入图片描述

单击“确定”后,您将获得所需的结果。

在此处输入图片描述

只需单击“主页”>“关闭并加载”即可将数据放回工作簿。

编辑:

要使用公式执行此操作,您可以使用如下方法:

在此处输入图片描述

这是上图中单元格 J2 中的公式。

=INDEX(B$2:B$15,SUMPRODUCT(N($A$2:$A$15=$I2),N(NOT(ISBLANK(B$2:B$15))),ROW(B$2:B$15))-1,1)

SUMPRODUCT部分将基本上检索 B 列中非空单元格的行号,其中 A 列与 I 列中的标题匹配。INDEX然后将从该行检索值。

请调整范围的垂直大小以适合您的数据,但在拖动和向下填充合并表之前,请确保 $ 与上面的相同,正如我在上面的 J2:O3 中所做的那样。

答案2

首先,删除列中的空白单元格B:G

  1. 选择列B:G
  2. 从选项卡中Home选择Find and SelectGo To Special
  3. 选择Blanks并点击OK。请注意选定的空白单元格。
  4. Home选项卡中选择Delete

接下来,按列排列行标题A

  1. 选择列A
  2. Data选项卡中选择Remove Duplicates
  3. 选择Continue with current selection并点击Enter

您的数据现在应该按所需顺序排列。

如果您升级到 Excel 365,则可以使用 Excel 的新动态公式快速完成此操作:

  1. 在单元格中I1输入=UNIQUE(FILTER(A:A,A:A<>""))
  2. 在单元格中J1输入=FILTER(B:B,B:B<>"")
  3. 将单元格复制J1到单元格K1:O1

相关内容