比较两张纸中的整行

时间:2014-10-27 21:38:19

标签: excel excel-vba excel-formula excel-2010 vba

我有两张相同数据的纸张,我想比较两张纸中的整行。

On Sheet1 (old data)
Col A       | Col B
1001        | My Val 1
2001        | My Val 2
3001        | My Val 3

On Sheet2 (new data)
Col A       | Col B          | C
3001        | My Val 3       |True
1001        | My New Val 1   |False
2001        | My New Val 2   |False

2 个答案:

答案 0 :(得分:0)

不要试图在比较行方面进行思考,而是使问题更简单。只比较一个单元格就更容易了 - 所以首先要整合你的"整行"进入一个单元格。通过使用&符号连接所有单元格,这很容易。

在两张纸上插入一个新的(隐藏的)C列,它将其他列与以下公式组合在一起:

  • = A1 & B1

现在您有一个易于比较的摘要,因为您只是在查看单个单元格和单个列。


在新工作表上,插入一个使用VLOOKUP的新列D,以查看第1页上是否存在该行:

  • =VLOOKUP( C1, Sheet1!C:C, 1, false)

现在,如果找不到该行,则会出现错误,如果找到该行,则会返回该行。

您的新列E(对应于您的旧列C)可以使用以下公式计算:

  • =NOT( ISERR( D1 ))

根据需要隐藏未使用的列。

答案 1 :(得分:0)

我从接受的答案的路径开始,将列连接在一起。但是,只有107列,事实证明这很乏味。

为此,我的解决方案是将两张纸粘贴到一块,保持列对齐。 然后,在“数据”标签上,点击删除重复项。如果剩余行数等于开始行数,则它们是相同的。如果不是,则需要过滤列以查找不相同的列。

enter image description here