![Excel数据分析自学经典](https://wfqqreader-1252317822.image.myqcloud.com/cover/330/27110330/b_27110330.jpg)
4.1 简单查找
Excel中的查找类函数,是所有函数中使用率相当高的函数之一,它不仅具有强大的查询功能,可以实现大数据表的单条件和多条件查询,而且还可以实现反向查询和跨工作表查询等查询功能。
4.1.1 单条件查找
单条件查询,顾名思义就是在查询过程中,函数只满足于指定的一个条件。这种查询方法是使用最为广泛的查询功能,也是最普及的查询使用。
1.案例分析
例如,用户在编制“进销存统计表”数据表时,需要将“销售汇总”数据添加到“本期销售”列中,如果使用普通数据的录入方法,需要用户在“销售汇总”列中根据“商品编码”值来查找相对应的数据,并将数据录入在“本期销售”列中。如此一来,既烦琐又容易出现录入错误。此时,用户可以使用VLOOKUP函数,来根据“商品编码”值快速查找相对应的“销售汇总”值,并将其返回到指定单元格中。
2.函数介绍
在Excel中,VLOOKUP函数的功能是在表格或单元格区域的首列查找指定的值,并由此返回区域中当前行中的任意值。
VLOOKUP函数的表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00372.jpg?sign=1738750862-scFkiIgE7PYS2WraavLYAtLgLzYnqNef-0-2c9c2f23beac256af07e7a84beb3e2b3)
其中,VLOOKUP函数参数的注意事项如下表所示。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/a26.jpg?sign=1738750862-3qPh9fNO0H7TYvid2p8YFMoOX6LXcTlm-0-2f65cb86a893468644afb00fdd927048)
3.案例实现
首先,在工作表中输入基础数据,并设置数据表的对齐格式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00373.jpg?sign=1738750862-vONK0cfXyiA6aYznv8X9dFLNDM0RK8QN-0-59bfae51ae00f1b485a49f754d54a839)
然后,选择单元格E3,在编辑栏中输入计算公式,按Enter键,返回商品编码对应的本期销售额。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00374.jpg?sign=1738750862-qZ5uZHlLNMITaTGaGyJMJzyEkWCyuzuH-0-229c44f3e73c4c93bf5511b2f5e30278)
最后,选择单元格区域E3:E12,执行【开始】|【编辑】|【填充】|【向下】命令,向下填充公式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00375.jpg?sign=1738750862-XmpmaNWGi5Q96320LZvuew7kBMFcOl1R-0-40bb4887564754cdacb9355b548417d6)
4.公式解析
在该案例中的单元格E3中的公式为:
=VLOOKUP(B3,$H$3:$I$12,2,FALSE)
在该公式中,B3代表需要对其进行搜索的值,即在该公式中需要搜索商品编号为“A1001”所对应的数值;而公式中的$H$3:$I$12则表示系统搜索的区域范围,由于该范围是固定的,因此需要添加绝对引用符号;公式中的2表示获取搜索范围内的第2列中的数值;公式中的FALSE表示对搜索范围进行模糊查询。
4.1.2 反向查找
在使用VLOOKUP函数查找数据时,用户会发现该函数中的查找值必须位于被查找区域中的第1列。而对于一些不在第1列中的数据,则无法对其进行直接查询。此时,用户便需要使用“反向查找”功能,运用嵌套函数来实现查找需求。
1.案例分析
例如,“进销存统计表”中的商品编码和商品名称是一一对应的。默认情况下,用户可以使用VLOOKUP函数通过商品编码来查找并返回商品名称。但是,由于商品名称位于商品编码的右侧,并不是单元格区域内的第1列;因此无法使用VLOOKUP函数,通过商品名称来反向查找商品编码。此时,用户可以通过VLOOKUP嵌套IF函数,以及INDEX嵌套MATCH函数两种方法,来实现反向查找。
2.函数介绍
在Excel中,INDEX函数可以显示表格或区域的值或值的引用,该函数存在数组和引用两种形式。当函数的第1个参数为数组常量时,将会使用数组形式进行计算。
INDEX函数的数组形式的功能是返回表格或数组中的元素值,此元素是由行号和列号的索引值组成。NDEX函数的数组形式的表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00376.jpg?sign=1738750862-zcCJA3sGBeQYbNk9HTZWEbhWbc1i4ip1-0-ee49b097eb408209c295d849d80d1741)
INDEX函数的引用形式的功能是返回指定的行与列交叉处的单元格引用,该函数的引用形式的表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00377.jpg?sign=1738750862-HIduRGXl4ZfS40n6iHsOT6OrOO0yX4gu-0-733c32d4c932ce73f6634f308888b391)
而MATCH函数则用于返回符合特定值特定顺序的项在数组中的相对位置,其函数表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00378.jpg?sign=1738750862-B5IAxd5kxxw4f2ebFd0WhH9fCU6Di3sa-0-496ee0ab5b3c87d064d54eebb52d2cf3)
3.案例实现
首先,在工作表中输入基础数据,并设置数据表的对齐格式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00379.jpg?sign=1738750862-DNYyMQTO9fBslcjdPyTyGZ4hPdrGKzhD-0-2cf2032fefe3637c16795b2963663403)
方法一:选择单元格I3,在编辑栏中输入计算公式,按Enter键,返回J3单元格对应的商品编码。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00380.jpg?sign=1738750862-vFqNeru0yzrn8zzgTLuiW42dKxsLBINR-0-325ccbb3ed2997e2b5958d2a25962c6b)
方法二:选择单元格I4,在编辑栏中输入计算公式,按Enter键,返回J4单元格对应的商品编码。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00381.jpg?sign=1738750862-kWjR8n9bA1ChPczMpFyqt8gutV3g0Hdo-0-52968ff43e3a846e7bc619a953b8da7d)
4.公式解析
方法一中的公式为:
=VLOOKUP(J3,IF({1,0},C3:C12,B3:B 12),2,)
该公式由VLOOKUP函数嵌套IF函数来实现的,其IF函数作为VLOOKUP函数的第2个参数进行运算,该部分公式将返回以数组形式所显示的商品名称和商品编码。用户可以选择单元格区域K3:L12,在编辑栏中输入IF函数,按F9键或Shift+Ctrl+Enter键,即可显示商品名称和商品编码数组。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00382.jpg?sign=1738750862-37fByBtGrStxrl5bsMzn2bv8D7vT6c5q-0-25143c4737c3982f6e3bdb885fb9f454)
通过IF计算结果可以发现,在第1列中显示了商品名称,第2列显示了商品编码,此时再用VLOOKUP查找数组内的相对应商品名称的编码就太容易不过了。
方法二中的公式为:
=INDEX(B3:B12,MATCH(J4,C3:C12,0))
该公式由INDEX函数嵌套MATCH函数来实现的,其中MATCH函数是根据单元格J4中的内容,在C列中来定位该内容的显示行数(8),并返回给INDEX函数。而INDEX函数,则把第1个参数理解成为一个矩阵,并根据第2个参数值来返回矩阵区域中符合标准的值,即返回MATCH函数返回的行数(8)对应的矩阵第1列中的值。
4.1.3 跨工作表查找
当用户在同一工作簿中创建多个工作表时,经常会遇到互相使用其他工作表数据的情况。此时,用户可以使用VLOOKUP函数,实现跨工作表查找,并将查找到的结果快捷且准确地返回到当前工作表中。
1.案例分析
例如,用户在编制“应扣应缴统计表”数据表中的“工资总额”时,需要依据员工的“工牌号”,通过查找“员工信息表”数据表中的“合计”值,对其进行填制。此时,为了保证数据的准确性,还需要运用VLOOKUP函数,根据“工牌号”值跨工作表查找相对应的“合计”值,并将其返回到“工资总额”列中。
2.案例实现
首先,在工作表中输入基础数据,并设置数据表的对齐格式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00383.jpg?sign=1738750862-G1V6NlzqyDXFtPtXyi62cwX2iketJVFY-0-69261fef69b138832b08d981d256fede)
然后,选择单元格F3,在编辑栏中输入计算公式,按Enter键,返回工牌号对应的工资总额。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00384.jpg?sign=1738750862-rBbuVwNcsBMJ0AGfI6Pi2VV8BUIoR0Cw-0-55ffbf80febba5fbf80d37cc8d0dc4b8)
3.公式解析
在该案例中的单元格E3中的公式为:
=VLOOKUP(B3,员工信息表!$B$2: $K$25,10)
在该公式中,B3代表需要对其进行搜索的值,即在该公式中需要搜索工牌号为“001”所对应的数值;而公式中的“员工信息表!$B$2:$K$25”则表示系统搜索的区域范围,即搜索“员工信息表”工作表中的$B$2:$K$25单元格区域;公式中的10表示获取搜索范围内的第10列中的数值,即单元格区域$B$2:$K$25中的第10列。