查找多行块

查找多行块

我有一个 Excel 文件,其中包含行块,每个块中的行数从 1 到最多 13 行不等,每个数据块后面都有一个空行。我想找到与任何其他行块相同的块。我知道我可以使用删除重复项并使用条件格式标记它们,但这只会比较单行。所以我的问题是,有没有办法标记这些与另一个块相同的块?

编辑:为了澄清我所说的数据类型:这是由焊接多个其他钢制物体而产生的钢制物体列表。所以我的数据看起来有点像这样:

项目 --- 组件 --- 所需数量 --- 其他栏...
项目 1 --- 组件 1 --- 1 --- ...
项目 1 --- 组件 3 --- 2 --- ...
项目 1 --- 组件 8 --- 1 --- ...
空行(仅用于数据的可读性,不是必需的)
项目 2 --- 组件 3 --- 2 --- ...
项目 2 --- 组件 4 --- 3 --- ...
空行(仅用于数据的可读性,不是必需的)
项目 3 --- 组件 3 --- 2 --- ...
项目 3 --- 组件 4 --- 3 --- ...
空行(仅用于数据的可读性,不是必需的)
项目4 --- 组件8 --- 1 --- ...
空行(仅用于数据的可读性,不是必需的)
...

如您所见,只有项目 2 和 3 的行块是相同的。因此,这些应该标记为重复。第一个块的第三行和第四个块的第一行是相同的,但由于并非所有块都是相同的,因此应该忽略这些。
我希望这能稍微澄清一下情况。

答案1

您可以使用一些辅助列来完成此操作:

  1. 创建一个列来连接所有组件描述:
    =IF(A2=A1,E1&",","")&B2
  2. 创建一个列来显示某一行是否是某个项目的最后一行:
    =A2<>A3
  3. 在下一列中,您可以显示某个项目是否重复:
    =IF(E2="","",IF(A2=A3,G3,COUNTIFS($E$2:$E$13,E2,$F$2:$F$13,TRUE)>1)),其中:
    • =IF(E2="","",...)- 如果行为空,则保留单元格为空白
    • IF(A2=A3,G3,...)- 从项目的最后一行(具有完整的组件列表)开始,为项目的所有行分配相同的值
    • COUNTIFS($E$2:$E$13,E2,$F$2:$F$13,TRUE)>1)- 检查该项目是否重复

在此处输入图片描述

此解决方案标记所有重复项,最好对它们进行过滤,如果您想删除它们,那么也许您不想过滤第一次出现的内容,只过滤重复的内容,这种情况下只需将引用从更改$E$2:$E$13$E$2:$E2

更新 1

如果所有项目中组件的顺序不一样,那么您需要对它们进行排序以使此过程正常工作:首先按“组件”排序,然后按“项目”排序。

相关内容