Excel中两表查找相同数据并引用相同数据其它列数据

如题:例如我有两张表 表1 和表2

表1中有姓名,身份证号,家庭住址,联系电话等

表2中有姓名

现在我想从表1中找到与表2中相同姓名的人,将这些相同的人的身份证号转到表2中来。

注:因为表1中有很多很多人都不是表2里的,只有部分是表2里的,也就是说表1中有表2中的人,也有很多很多其它人,怎么从表1中提取我要的人的身份证号到表2中来?
为什么我用vlook函数会出现这样的情况,图中是表4引用表3的数据

假如表1中,姓名、身份证号、家庭住址、联系电话分别在A、B、C、D列。表2中姓名在A列。
那么在表2的B列中输入公式: =VLOOKUP(A1,表1!$A:$B,2,false)。往下拖动就行了。
注意公式中所有的符号、括号等等都要是英文格式的。追问

为什么有时候用填充柄拉的时候出现的结果都是一样的?

追答

你把公式改成 =vlookup(a1, sheet3!$A$1:$B$4, 2, 0) ,或者=vlookup(a1, sheet3!$A$1:$B$4, 2, false)再试一下

追问

请看图

追答

1. VLOOKUP是利用首列去查找后面列中对应的值。而你的公式是根据C列去查找B列中的值,所以肯定会出错。因此sheet1中,要把C列跟B列的值对调一下。
2. 公式最后面的值是1的时候,是模糊查找,0是精确查找。你可以分别试一下看看效果。一般情况下都会是用0.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-05
假设表1和表2分别是sheet1 sheet2
再假设
sheet1内容是ABCD等列
sheet2中A列是姓名
那你的sheet2表B2输入
=vlookup(a2,sheet1!A:D,2,0)
下拉公式
如果公式修改为
=vlookup($a2,sheet1!$A:$E,column(b$1),0)
那可以下拉并右拉,实现家庭住址和联系电话的导入追问

为什么有时候用填充柄拉的时候出现的结果都是一样的?

追答

不确定,需要根据你的实际情况来看。或公式错误。或数据格式有问题。可能性很多。
仔细看一下你的二个计算机
比如我下面的二个
计算机
计算机
这二个是不同的,第二个后面有一个空格,你的肯定也是如此,有一个空格,或者是alt+回车产生的回车。

追问

追答

公式错误,这是逆向查询,常规的vlookup用法是错误的。
需要用
=vlookup(b2,if({1,0},……
这样的公式将第一列跟二列换位置。
你可以用index+match
sheet2表的A1输入
=index(sheet1!B:B,match(b1,sheet1!C:C,),)

第2个回答  2011-09-05
假设表1中有姓名(在A列),身份证号(在B列),家庭住址(在C列),联系电话等(在D列等..)
假设表2的A列是姓名
A2输入要查找的姓名
B2输入公式
=vlookup(a2,sheet1!$a:$z,column(b:b),0)
公式往右拉到最后一列
然后全选第二行往下拉追问

为什么有时候用填充柄拉的时候出现的结果都是一样的?

本回答被提问者采纳
第3个回答  2011-09-05
=Vlookup(sheet2!A1,sheet1!A1:B100,2,Falsh)
大概的意思就是在表1A1:B100这个范围中符合表2中A1列的姓名,就返回表1第二列身份证列的数值。追问

为什么有时候用填充柄拉的时候出现的结果都是一样的?

追答

第一种情况就是那个结果是相同的。第二种情况就是本来是公式下拉填充,变成了数值填充。这个时候你加一下绝对引用值$把数值给固定,这样就可以让数值不会在拉的过程中动了。

第4个回答  2011-09-05
我也不知道
相似回答