Excel-对类似数字进行分组

Excel-对类似数字进行分组

我有一张 Excel 表,其中包含借方列和贷方列。通过插入一列并使用公式=IF(B1="",C1,B1),然后按新列排序,我能够将类似的借方和贷方堆叠在一起。

我现在的任务是将所有具有类似借方和贷方的行移至顶部(或单独的工作表),并将所有没有类似借方和贷方的行移至底部(或单独的工作表)。换句话说,我希望将行1, 2, 4, 5, 7, 8, 10, 11与行36和分开8

例子:

同类数和非同类数的混合

答案1

一个简单的方法是使用新的 E 列并写入:

=IF(COUNTIF($D$1:$D$6198,D1)>1,1,"")

无需将其格式化为表格,只需将其向下拖动即可,
D1:D6198 是新列,其中的公式=IF(B1="",C1,B1)已由您完成

如果有相同的数字多次出现,则为 1 (5777047-->1...)
如果只有一次为空“”
您可以根据 E 列对结果进行排序

删除 D 中公式的更新

=IF(OR(COUNTIF($C$1:$C$6198,B1)>0,COUNTIF($B$1:$B$6198,C1)>0),1,"")

在 D1 中写入此公式并将其向下拖动,
不要格式化为表格,无需,
如果借方和贷方的数字相同,则将有 1,如果仅在一列中,则“”为空,
现在按 D 列排序
(您可以将特殊值复制粘贴到另一张表的相应行中)

答案2

将数据格式化为表格。在 E 列中,查找 ColC 与 ColB 的匹配项。例如,在 E1 中,此公式:

=match(C1, B$1:B$11,0)

...将查找 c1 中的值是否有匹配项任何地方在 B1:B11 中。

您想要保存 C 存在于 ColB 中或 B 存在于 ColC 中的行:

=IF(OR(ISNUMBER(MATCH(C2,B$2:B$12,0)), ISNUMBER(MATCH(B2,C$2:C$12,0))),1,0))

填满。

现在重复的行在 E 列中将为 1,其他行将为 0。

按 E 列排序。

相关内容