我有一张 Excel 表,其中包含借方列和贷方列。通过插入一列并使用公式=IF(B1="",C1,B1)
,然后按新列排序,我能够将类似的借方和贷方堆叠在一起。
我现在的任务是将所有具有类似借方和贷方的行移至顶部(或单独的工作表),并将所有没有类似借方和贷方的行移至底部(或单独的工作表)。换句话说,我希望将行1, 2, 4, 5, 7, 8, 10, 11
与行3
、6
和分开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 列排序。