2个excel表资料差异对比后补充录入(一份为基准数据,另一份为录入数据)

现有2份excel表(表1、表2),数据很大(几万条)且非都一一对应,表1为基准数据,资料数据录入要依此表;表2为录入格式表,须对照表1修正,多余或缺少部分须标注出;2份表唯一关联为身份证号(共同有),表1附带某帐号,表2附带编号。
账号 户名 身份证号 (表1)
800888888888888 K 400888888888888888

编号 户名 身份证号 (表2)
100100101001 K 400888888888888888

最终输出数据:以表1为基准数据,输出含身份证号,同时兼有表1某帐号,表2编号,三码唯一的新表。
编号 户名 身份证号 账号 (输出表)
100100101001 K 400888888888888888 800888888888888

备注: 本人使用VLOOKUP时:身份证号=IF(ISNA(LOOKUP(C2,Sheet1!J:J,Sheet1!J:J)),"",LOOKUP(C2,Sheet1!J:J,Sheet1!J:J)),可能函数设置不当,得出数据误差较大,须修正数据无法准确找出。

求各路大神 相助一解决方案 谢谢

第1个回答  2014-02-11

留下联系方式,好直接交流,或者直接将附件(模拟数据,隐私数据用其他代替)发我邮箱[email protected]

已经将结果发你邮箱。

直接在sheet2表D2输入:

=IF(COUNTIF(OFFSET(Sheet1!D$1,1,,COUNTA(Sheet1!D:D)-1),C2),OFFSET(Sheet1!A$1,MATCH(C2,OFFSET(Sheet1!D$1,1,,COUNTA(Sheet1!D:D)-1),),),"无")

下拉填充公式即可。公式已经设置为动态引用sheet1表,即不管sheet1表有多少行,公式均不用做改动。

另设置了条件格式,当D列返回“无”时,改行黄色标示出来。

如果要重新生成新表,则将sheet2表进行筛选,将“无”的行去掉,对筛选出来的数据选中复制到另一张表即可。

第2个回答  2014-02-11

你这种情况用INDEX函数比较合适

如下图在输出表中的

B2=Sheet1!B2

C2=Sheet1!C2

D2=Sheet1!A2

A2=IF(ISERROR(INDEX(Sheet2!A:A,MATCH(C2,Sheet2!C:C,0)))," ",INDEX(Sheet2!A:A,MATCH(C2,Sheet2!C:C,0)))

一起向下拉即可

请看附件例子



第3个回答  2014-02-11
请将文件发到[email protected],最好带有几个有代表性的数据。
第4个回答  2014-02-11
你在lookup函数中指定数组确切区域了没?我回答没完,你通过追问方式,我们共同来查找原因。
相似回答