@target 多个值无法使用_Excel使用VLookup与Column/Match结合快速获得返回值

在使用VLookup函数的时候,第三个参数决定了返回的列,如果列数比较少时候,直接数列数即可,但是当需要返回的列与起始列间隔比较远的时候,不仅容易数错列,也拖动表格的的时候也很麻烦.一种解决办法在于,使用column函数,举例而言,起始列B列,目标列target与B列的差值即column(target) - column(B),可以看到B列的位置是2,D列值是4,两列之差是2,D列相对B列的位置即是2+1 = 3,

899410bfd835064801d55a4db24abc36.png

当我们使用Vloopup函数从B列开始V,寻找D列的值,即可以使用

=Vlookup(findValue,B:D,3,0)

如果使用开始的方法即是

=Vlookup(findValue,B:D,column(D)-column(B)+1,0)

即可以实现;换而言之,Vlookup的第三个参数值即 column(目标列)-column(初始列)+1

=Vlookup(findValue,初始列:目标列,column(目标列)-column(初始列)+1,0)

这种方法比较能快速解决列间距比较远的情况;同样还有一种办法即是使用match,得到第三个参数值,这种方法更巧妙在于,连目标列都不需要去寻找,只需要知道你希望得到的列的名称即可

首先可以看看Match函数的获得特定数值,

9c9558f857bd327b2b58445fba0ff771.png

如上图所示,寻找GDP在D1:F1区域相对位置,可以使用match函数去寻找即可返回比较目标的值,相比column都不需要相减之后再加上1,即相对初始列的位置,唯一的问题在于名字要对得上,也尽量不要重复列名,不然得不到预期的结果.具体公式即

=Vlookup(findValue,初始列:任何列,match(目标列名字,$起始列$1:$任何列$1,0),0)

其中上述任何列即包含目标列的列,即搜索区域要包含目标列,一般情况下,我都是设置上述任何列为搜索区域的最后一列,这样省心也方便通过目标列名字变换获取的值(不会设置动图)

f87f310122bf40e9934939a1baa2d3b4.png

当修改要搜索指标的时候,比如修改成GDP,即返回武汉的 GDP,当想寻找武汉增速的时候,修改P1的值为增速,即返回武汉的增速;在实战中,可以通过这种办法,比较快速获得想要的指标.比如想获得多个指标值,就可以新增多个列,把上述公式复制到格子中,修改match中的值为对应的格子值,即可,一般情况下建议锁死match的搜索值以及搜索区域

MATCH($P$1,$J$1:$N$1,0)

这样在下拉的时候就不会改变match返回值,可以直接批量操作不同区域的查找值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值