EXCEL多列vlookup匹配

本文介绍了在Excel中使用VLOOKUP进行多列匹配时的关键点,包括$字符的使用确保引用固定,以及Column(A1)函数获取单元格所在列名。通过示例说明了匹配过程,强调了在数据匹配后应复制粘贴数值以避免数据错误。在遇到无匹配值时,建议将空值设为0。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先要说一个血肉教训:Vlookup不靠谱,一定要在得到想要匹配的结果后,在一个新的excel文档中,重新复制-粘贴数值。
不然,有时候你花了半天vlookup后的数据,第二天打开发现是匹配前的数据! (具体原因懒得分析了)

关键有二:

1) $字符

该符合保证了后面的字符不会随着拉动而自动变化

2) Column(A1)函数

该函数返回输入变量所在的列名

示例:

表1:在这里插入图片描述
表2:
每个grid对应后面的t0~t23共24个字段
在这里插入图片描述

表1的tid-250m对应表2的grid

目标是得到表1的tid-250m的t0~t23字段

步骤:
1)首先我们按照单列匹配的方法,输入vlookup的公式,得到第一列的结果,如下:
在这里插入图片描述
没有匹配成功的原因是有的列没有对应的值,检查后续有值的格网发现是匹配成功的。
2)修改公式
原公式如下:

> =VLOOKUP(C2,'02_time.csv'!$ A:$Y,2,0)

修改后的公式如下:

=VLOOKUP($C2,'02_time.csv'! $ A:$Y,COLUMN(B2),0)
## 重要!!这里的B2中的B列,是针对你所选择的单元框架来说的第二列,而不是针对全部单元格的B列

对了, 在Vlookup后如果有太多没有匹配数值的情况,或许会带来分析上的麻烦,因此最好还是在这一步就把空值设置为0,公式如下:

 =IFERROR(VLOOKUP($C2,'02_time.csv'! $ A:$Y,COLUMN(B2),0),0)

注意,函数是COLUMN(),不是COLUMNS()。没有S!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值