2013-10-29 40 views
2

我有一个电子表格,我需要将两列匹配在一起。然而,“鸽子代码”是3600行,“代码2”是1100.它们都具有相同的代码,你可以在图像中看到,但你也可以看到它开始改变的地方,我需要所有的代码排列,所以我可以看到差距。我已经安排他们全部按字母顺序及其“代码2”,将需要通过投其所好,以“鸠代码排序一列以匹配excel中的另一列

enter image description here

回答

0

没有VBA我这样做(与错配的数量有限列!)在辅助列中添加=INDIRECT("A"&ROW())<>INDIRECT("B"&ROW())等公式,向下工作,每次看到TRUE分流时合适的列都适合,但它可能仅适用于1100行!

3

如果上述解决方案会导致在太多分流和vba是不是一种选择,还有另一种方法,复制第一列,并使用'删除重复',现在你有一个索引列表,把数字从1吨在它右侧的列中输入x。

在两个列表之间插入一列,并在第二个列表的右侧插入一列。

假设索引列表在F和G中的数字,将此公式放在较大列表中第一个单元格的单元格右侧: = VLOOKUP(A2,$ F $ 2:$ G $ 500,2, FALSE)

相应地调整范围。在较短的列表中的第一个单元格右侧的单元格中放入相同的公式,当然用C2代替A2。将这两个formules复制到列表的末尾。

现在两列在每一行都有一个索引。您可以使用数据排序来匹配它们,但为此您需要在索引列中添加哑元。

将这个公式您的基本索引列表的单元格右侧:= COUNTIF(B:B,G2) 而这一次在该单元格右侧:= COUNTIF(d:d,G2)

现在你知道每个记录在两个列表中出现的次数。只需手动添加额外的数字,以便两个公式得出相同的结果。你应该能够做到这一点非常快。如果您有200条记录在第一列中使用2次,而不是第二列中,则只需复制这200条记录的索引并粘贴两次。 countif的会自动更新。 您可以使用额外的列来计算两个计数之间的差异,并使用基本索引列表上的数据排序来区分不同。

之后,只是使用数据排序。

如果我的指示很清楚,这不会花费你超过10分钟。

编辑: 下面是一个例子:http://img14.imageshack.us/img14/6366/k8pg.jpg

+0

出的curiousty怎么VBA不是一种选择?这是否容易,因为我不知道它。 – Simon

+0

VBA绝对是一种选择。但我认为它不在桌面上,因为没有vba标签(现在有)。 一个宏可以非常快速地完成这个任务,但是在你使用它之前,你必须考虑如何对它进行编码,编码,测试并运行它。在宏运行的时候,如果不是更多,你可以做两次解决方案。 – Timevdv

相关问题