![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=1739237188-DIddmscqwclXe4Ik2JYR5gRIyStb8zuV-0-82b022cf7a3595ac0e2986bad0ea8831)
其中,VLOOKUP函数参数的注意事项如下表所示。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/a26.jpg?sign=1739237188-Z9DAhbuDP00kknlF6jlnWCzLchixmwtT-0-c6dfa95266b7cd6a695c1f1c2aa233d9)
3.案例实现
首先,在工作表中输入基础数据,并设置数据表的对齐格式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00373.jpg?sign=1739237188-nvNxYlid7v4PLULVsCsFZQ4kPES0PJFb-0-2659ebc54151ba2a512d1fc2e410a637)
然后,选择单元格E3,在编辑栏中输入计算公式,按Enter键,返回商品编码对应的本期销售额。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00374.jpg?sign=1739237188-zP0tISOs7Gfkyiqs8TPUddZy53rIfMd5-0-0b005951c9f71c7a82ec4f486805a22b)
最后,选择单元格区域E3:E12,执行【开始】|【编辑】|【填充】|【向下】命令,向下填充公式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00375.jpg?sign=1739237188-S7HBy1MaUZ91Znj1l0sYXcZ4MqhdEjNG-0-1b6ade582c7e748154cee9f4fefdbae6)
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=1739237188-Kai7e1Z9XHhWEhx9hZH0XxCcKPJCWo93-0-0eaaf9b30e15e2bb9e9575c429c178ed)
INDEX函数的引用形式的功能是返回指定的行与列交叉处的单元格引用,该函数的引用形式的表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00377.jpg?sign=1739237188-5hEFIyODUohi8UB5yNDFnEwheOqQfjF0-0-7eb0234b81f48c3ae70c2e04f27be322)
而MATCH函数则用于返回符合特定值特定顺序的项在数组中的相对位置,其函数表达式为:
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00378.jpg?sign=1739237188-WiFsZt3fsEGhPVjAkzgCDsyOLDsuCaoq-0-42c03ea123d7cf68b16fd55f2d43caa5)
3.案例实现
首先,在工作表中输入基础数据,并设置数据表的对齐格式。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00379.jpg?sign=1739237188-rHxcW8YlSCDxNrKHNnZEbwC1qZn97tDE-0-58490546a4008381fdf7008f0182ff07)
方法一:选择单元格I3,在编辑栏中输入计算公式,按Enter键,返回J3单元格对应的商品编码。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00380.jpg?sign=1739237188-r7m9buRGaM6D8lRTzWJI7XdBibTwE112-0-b851e52cc02ea8b69ff99a7287e4d6f7)
方法二:选择单元格I4,在编辑栏中输入计算公式,按Enter键,返回J4单元格对应的商品编码。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00381.jpg?sign=1739237188-TSoeaKyir9pOgVCm5nDJXZQjRpm25orv-0-2ab617157cb6a85c7b8180d8ec4e98bf)
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=1739237188-36GQz0RJoyifua1VoIo3Q9trNXxOxAFi-0-1b95c16bd4d578e566c2bcd4ac98bf79)
通过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=1739237188-xZ1aPvgAf4netF4tAu81ClBwyg8Lnb5o-0-cb3c7ec461550bda958c8945b4f0ae62)
然后,选择单元格F3,在编辑栏中输入计算公式,按Enter键,返回工牌号对应的工资总额。
![](https://epubservercos.yuewen.com/6F295A/15477636404518106/epubprivate/OEBPS/Images/00384.jpg?sign=1739237188-KZGijvbFBzOR4BbnIo0sYZmKN9aswpMl-0-e230b9efcddfae3fd1adf9de38fc66ea)
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列。