查找出同时匹配Excel表中多列的所有结果,两种方法不容错过

Excel学习世界 2023-07-19 20:59:34

关于按多个条件组合查找,以前我曾写过不少教程,时隔已久,最近又有宝子提出这类需求。那么今天就一文教大家两种方式,顺便帮助大家理解一下数组。

案例:

从下图 1 的数据表中按多个条件查找出符合条件的所有结果,效果如下图 2、3 所示。

解决方案 1:

1. 在右侧设置查询条件和需要查找的结果。

2. 在 J2 单元格中输入以下公式 --> 按 Ctrl+Shift+Enter:

=VLOOKUP(H2&I2,IF({1,0},B:B&C:C,F:F),2,0)

公式释义:

vlookup 函数很常用,其中 4 段参数表示 (要查找的值,查阅值所在的区域,含返回值在区域中的列号,0 表示精确匹配);

H2&I2:将两个单元格连接起来,拼接成一个不重复的查找值,结果为“1诸葛钢铁”;

IF({1,0},B:B&C:C,F:F):

IF 函数的参数为 (条件,值1,值2),即如果条件为真,返回“值1”,为假则返回“值2”;

第一个条件参数 {1,0} 是一个一行两列的数组常量,分别有两个元素 1 和 0;

第二个参数则是 B、C 列连接后的垂直数组;

因为数组行列不一致,会进行扩展,扩展后 if 函数的结果为 {"月份姓名","奖金";"1郑喜定",7153;"1宋大莲",2895;"1王富贵",1600;...};

如此这般,相当于把查询区域的 B 和 C 列连接成了唯一值,与 vlookup 的第一个参数正好匹配;

最后三键结束,生成数组公式

解决方案 2:

如果上面的数组实在很难理解,不如用这个方式,不仅能多条件查找,还能在重复时查找出所有结果。

1. 重新设置如下查找条件和区域。

* 请注意:结果区域的表头字段必须与查询区域的表头字段完全一致。

2. 选择菜单栏的“数据”-->“高级”

3. 在弹出的对话框中选择“将筛选结果复制到其他位置”--> 按以下方式设置 --> 点击“确定”:

列表区域:选择 A 至 F 列的数据表

条件区域: 选择 H1:I2

复制到:选择 J1 单元格

所有符合条件的结果都查找出来了。

4. 调整好结果区域的格式。

0 阅读:4

Excel学习世界

简介:Excel 学习交流