打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel|IF函数构建二维内存数组以及vlookup多值、反向、模糊查找

1 IF函数及以常量数组做为判断条件

首先了解一下IF函数的语法结构:

if(条件,条件为真的返回值,条件为假的返回值)

现在我们尝试使用其他数值代替真假,excel使用0代替假,使用非0的数值都可以代替真。

那么用一个数组作为条件怎么理解呢,我们可以尝试一下。可以发现0放在前面条件是假,1放在前面条件为真。

2 VLOOKUP函数单条件查找

然后我们了解一下VLOOKUP函数的语法结构:

VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

用中文表示就就是:

VLOOKUP(查找值,查找区域,结果所在查找区域的列序号,模糊查找还是精确查找)

下面根据案例来实践一下。

VLOOKUP单条件查找:

VLOOKUP通过if({1,0},,,)实现单条件查找:

通过公式求值以看到if结构得出的值:

3 VLOOKUP函数逆向查找

VLOOKUP通过if({0,1},,,)实现单条件反向查找(二维内存数组):

通过公式求值以看到if结构得出的值(二维内存数组):

这里为什么一定要用条件数组呢,因为如果直接使用0或者1作为条件,并不能返回一个可以作为vlookup查找的内存数组。而用{1,0}做为条件,可以返回一个内存数组。

4 VLOOKUP多条件查找

如下图所示,需要根据SKU和SPE查找出QTY,可以通过两列的数据联合到一起,应用if({0,1},,,)结构实现一个内存二维数组,如下:

在H2单元格输入数组公式,按Ctrl+Shift+Enter 组合键结束公式

=VLOOKUP(F2&G2,IF({1,0},$B$2:$B$10&$C$2:$C$10,$D$2:$D$10),2,0)

公式说明:

首先我们查找值为F2&G2就是把SKU和SPE连接在一起;

查找区域使用IF({1,0},$B$2:$B$10&$C$2:$C$10,$D$2:$D$10)把SKU列和SPE列连接在一起,也就是把SKU和SPE组合为一列,然后QTY为第2列,返回一个多行两列的内存二维数组,再用VLOOKUP查询即可。

5 VLOOKUP使用通配符查找

当我们在查找的时候,只根据查找值的一部分数据查找时,可以使用通配符查询,例如下图,需根据名称给定的简称查找出数量

在E2单元格输入公式:=VLOOKUP('*'&D2&'*',$A$2:$B$8,2,0)

公式说明:*是通配符,可以代表任意多个字符,这里根据查找名称的简称,因为查找区域跟查找值不符,如果不使用通配符必定会返回错误值,'*'&D2&'*' 表示区域中包含蓝莓的就会被找到

6 VLOOKUP返回多列数据

如下案例,需要根据查找姓名返回多列数据,那么如何输入一个公式搞定一个区域的数据查找呢?

G2值对应的公式:=VLOOKUP($F$2,$A:B,MATCH(G$1,$A$1:$E$1,0),0)
H2值对应的公式:=VLOOKUP($F$2,$A:C,MATCH(H$1,$A$1:$E$1,0),0)
I2值对应的公式:=VLOOKUP($F$2,$A:D,MATCH(I$1,$A$1:$E$1,0),0)

公式说明:MATCH(G$1,$A$1:$E$1,0)

公式其它都没什么变化,主要是第三个参数返回的列序号,因为公式的移动填充,我们不能确定它是返回第几列,所以在这里我们使用MATCH(G$1,$A$1:$E$1,0)帮我们去查找科目所在查找区域中的列序号,最后返回一个准确的数据。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VLOOKUP逆向查找
【Excel问伊答86】不用数组公式也能让VLOOKUP多条件查询
Vlookup函数实现多条件查找,又有新方法
VLOOKUP函数详解(精确查找)
VLOOKUP函数的多条件查找
IF函数的8个用法公式!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服