使用Excel删除交换的重复行

我有一个id列在2列。 有一些对是冗余的,但以交换forms。 我如何删除使用Excel的冗余ID对?

这是解释,

初始,

col1 col2 id1 id2 id2 id1 id3 id8 id1 id5 id1 id6 id2 id9 

需要像,

 col1 col2 id1 id2 id3 id8 id1 id5 id1 id6 id2 id9 

(请注意,第二行id2 id1被删除,因为它是交换重复)。

谢谢..

1.在这两个单元格附近写入两个最大最小function作为excel函数(maxa由于某种原因不起作用)

2.只将值复制到其他地方并删除重复项。

同样的功能粘贴在下面的单元格中

ps:我试图转置然后sorting转置,但它试图sorting为一个大logging,而不是元组。 因此,function。

我会使用以下步骤:

将它们以正确的顺序一起joinC列

 =IF(A2<B2,A2&"|"&B2,B2&"|"&A2) 

在列D中find唯一值(必须使用Ctrl-Shift-Enterinput数组公式)

 =IFERROR(INDEX($C$2:$C$7, MATCH(0, COUNTIF($D$1:D1, $C$2:$C$7), 0)),"") 

将E列中的第一个分开

 =IFERROR(LEFT(D2,FIND("|",D2)-1),"") 

将F列中的第二个分开

 =IFERROR(RIGHT(D2,LEN(D2)-FIND("|",D2)),"") 

在这里输入图像说明

假设你正在处理列A和B的每列中的标题,我会这样做把单元格C2,并下拉。 删除大于0的任何内容:

  =COUNTIFS($B$2:B2,A2,$A$2:A2,B2) 

为了澄清这里发生的事情,当你拖下来的时候,范围中的$作为锚点。 因此,从$ B $ 2:B2的范围意味着下一个单元格将是$ B $ 2:B3,然后是$ B $ 2:B4,依此类推。

COUNTIFS()公式返回满足所有条件的计数,因此只有那些切换了两个值的行才会被计数。

使用COUNTIFS()与我在这里完成的锚定范围只计算在该行上方的任何值,这就是为什么您可以删除任何非零而不会丢失唯一值。

我build议,如果有什么我没有想到的,当然可以validation一下。