有两个工作表1,2,都包含同样的数据,如户名,账号,日期等,怎么核对两个表里的数据是否相符?

如题所述

用哪个表作为基准表来,检查哪个表的数据?若用表1来检查表2的数据的话

可以在各列后面加辅助列,写入公式的办法

例子:表1,表名:1

A               B             C

户名 账号 日期

张三 L2011 2011-5-21

李四 L2022 2011-5-20

表1,表名:2

A               B              C            D              E

户名 账号 判断 日期 判断

张三 L2011 2011-5-21

李四 L2022 2011-5-10 有错误

C2的公式

=IF(VLOOKUP(A2,'1'!$A$2:$C$3,2,FALSE)=B2,"","有错误")

E2的公式

=IF(VLOOKUP(A2,'1'!$A$2:$C$3,3,FALSE)=D2,"","有错误")

然后就可以知道那些错误了。。

追问

你最靠谱,不存在基准表,因为两个系统都可能出差错,如果显示错误就得核查原始凭证,一般来说,得用账号做关键字段,因为姓名有重复,我很需要能否写成宏,完成大量数据的核对,而且核对包括的字段很多,能否再请教大哥,用vba怎么实现

追答

请将表格发过来吧,QQ:61984114,若用VBA的话,就不用加辅助列了,可以用将单元格底色变红的方法,以及将另一个表的信息用“批注”来显示,以方便对比。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-31
假设表1,表2只有3列,在表2的D2输入:
=IF(ISERROR(MATCH(A2&B2&C2,Sheet1!$A$1:$A$1000&Sheet1!$B$1:$B$1000&Sheet1!$C$1:$C$1000,)),"不符","")
按CTRL+SHIFT+ENTER结束
下拉复制公式即可
数据不相符的就会在后面显示"不符",相符的则不显示
若你的表列数较多,你就在上式中加入增加列名,如4列,则上式在E2中输入:
=IF(ISERROR(MATCH(A2&B2&C2&D2,Sheet1!$A$1:$A$1000&Sheet1!$B$1:$B$1000&Sheet1!$C$1:$C$1000&SHEET1!$D$1:$D$1000,)),"不符","")
依此类推
实在不行就HI我,把表传来,我帮你做,应该半个小时就可搞定了.
第2个回答  2011-05-31
- -~ 囧~ 自己不会看啊~
我就说下方法 要下班了~ 第二个表开个字段标识是否相等 写数据库函数 判断 每个字段是否相等 就这样~
第3个回答  2011-05-31
应该是想用vlookup对应排序后直接相减,不是零的就是不符和数据了
相似回答