匹配公式vlookup 匹配2个条件的vlookup


今天我们将一同探讨在处理合并单元格的表格时如何进行数据查询的技巧。这样的问题,相信许多人都曾遇到过挑战。在含有合并单元格的表格中,利用函数进行数据查询时,常常无法得到正确的结果。下面,就让我们一起探索其原因以及解决方法。

对于希望从零开始学习Excel的朋友们,这里可以查看相关学习资源

问题根源在于,我们看到的实际数据与函数所感知的数据有所不同。如在图表中右侧展示的部分,即函数视角中的数据是去除合并单元格后的格式。这导致只有每个班级的第一个姓名与班级对应,其余数据则没有明确的班级对应关系,因此函数在识别时容易出现偏差。

那么,针对这种情况我们应如何处理呢?主要分为两种情况来讨论。

如果你的数据源是可编辑的,一个简单且有效的解决办法是取消合并单元格,然后为每个姓名填充其对应的班级信息。这个过程可以实现批量设置,操作起来非常便捷。

完成姓名填充后,数据查询就变得相对简单了。在这里,虽然vlookup是一个常用的方法,但为了更灵活和方便地处理多条件查询,我们更推荐使用index+match的组合来进行数据查询。

具体的公式为:=INDEX($C$2:$C$13,MATCH(F3&G3,$A$2:$A$13&$B$2:$B$14,0))。这个公式是index+match多条件查询的常规使用方法。

对于第二种情况,即数据源不可更改,必须保持合并单元格的格式时,处理的办法要复杂一些。这时我们需要借助indirect函数。该函数的使用方法之前已经分享过,如果有需要了解更多,我们将提供相应的文章链接供您参考。

在这种情境下,我们可以通过indirect函数来构建一个动态的数据查询区域,从而达成数据查询的目的。

公式的详细解释如下:VLOOKUP(F4, INDIRECT("B"&MATCH(E4, A:A, 0)&":C14"), 2, 0)。让我们逐一解析这个公式的参数:

第一参数:F4,这是查找表中姓名的位置。

第二参数:"B"&MATCH(E4, A:A, 0)&":C14",这是数据查询的动态区域。

第三参数:2,表示查找的结果在第二列。

第四参数:0,表示进行精确匹配。

关键在于Vlookup函数的第二参数。如图所示,这里B是列标号,"MATCH(E4, A:A, 0)"的作用是找到班级在A列的具置,"C14"则代表了表格的结尾位置。这样就能精准定位到各个班级对应的姓名进行查询。

以上就是今天的内容分享。对于合并单元格的数据查询问题,第二种方法具有通用性,适用于各种查找函数,不仅仅是Vlookup函数。大家可以尝试一下这个方法。

尽管可能有些人会觉得这有些复杂,但通过实践和多次尝试后,你会发现其实这是一种比较直接且有效的处理方法。