EXCEL两个表如何通过关联合并

表Sheet1
字段A 字段B 字段C
1 1 BBC
2 2 BBD
5 1 BBD

表Sheet2

字段A 字段D 字段E
1 100 A01
3 200 A02
4 300 A03

两个表是通过字段A作为关联,将相同的数据进行合并成一行完整的数据。需要得到的结果是:

字段A 字段B 字段C 字段D 字段E
1 1 BBC 100 A01
2 2 BBD #N/A #N/A
5 1 BBD #N/A #N/A

最佳的答案是:

表Sheet1的

D1输入:=VLOOKUP(A1,Sheet2!A:C,2,0)

E1输入:=VLOOKUP(A1,Sheet2!A:C,3,0)

向下复制公式即可


原理:

VLOOKUP在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数VLOOKUP代替函数HLOOKUP。

在VLOOKUP中的V代表垂直。


语法:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

lookup_value 是需要在数组第一列中查找的数值。lookup_value可以为数值、引用或文本字符串。

table_array 是需要在其中查找数据的数据表。可以使用对区域或区域名称的引用,例如数据库或列表。


如果range_lookup为TRUE,则table_array的第一列中的数值必须按升序排列:...、-2、-1、0、1、2、...、-Z、FALSE、TRUE;否则,函数VLOOKUP不能返回正确的数值。如果range_lookup为FALSE,table_array不必进行排序。


通过在“数据”菜单中的“排序”中选择“升序”,可将数值按升序排列。


table_array的第一列中的数值可以为文本、数字或逻辑值。


文本不区分大小写。


co_index_num 为table_array中待返回的匹配值的列序号。

co_index_num 为1时,返回table_array第一列中的数值;col_index_num为2时,返回table_array第二列中的数值,以此类推。如果col_index_num小于1,函数VLOOKUP返回错误值#VALUE!;如果col_index_num大于table_array的列数,函数VLOOKUP返回错误值#REF!。


range_lookup 为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。如果为TRUE或者省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value的最大数值;如果range_value为FALSE,函数VLOOKUP将返回精确匹配值。如果找不到,则返回错误值#N/A。


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值