VLOOKUP函数常用套路大全
今天和大家来说说VLOOKUP的那些事儿,深入了解一下VLOOKUP函数的各种用法,看看这位大众情人还藏着多少不为人知的秘密。
函数的语法为:
VLOOKUP(要找谁,在哪儿找,返回第几列的内容,精确找还是近似找)
第一参数是要在表格或区域的第一列中查询的值。
第二参数是需要查询的单元格区域,这个区域中的首列必须要包含查询值,否则公式将返回错误值。如果查询区域中包含多个符合条件的查询值,VLOOKUP函数只能返回第一个查找到的结果。
第三参数用于指定返回查询区域中第几列的值,该参数如果超出待查询区域的总列数,VLOOKUP函数将返回错误值#REF!,如果小于1返回错误值#VALUE!。
第四参数决定函数的查找方式,如果为0或FASLE,用精确匹配方式,而且支持无序查找;如果为TRUE或被省略,则使用近似匹配方式,同时要求查询区域的首列按升序排序。
1、常规查询
如图,需要从B~E的数据表中,根据H3单元格的姓名查询对应的职务。
公式为:
=VLOOKUP(H3,C:E,3,0)
提示:
VLOOKUP函数第三参数中的列号,不能理解为工作表中实际的列号,而是指定要返回查询区域中第几列的值。
2、带通配符的查询
如图,需要从B~E的数据表中,根据H3单元格的姓氏,查询对应的姓名和部门。
公式为:
=VLOOKUP($H3&"*",$C:$E,COLUMN(A1),0)
提示:
通配符“*”表示任意多个字符,VLOOKUP函数第一参数使用$H3&"*",即在C列中查询以H2单元格内容开头的内容,并返回对应列的信息。
3、近似查询
如图,需要根据H~I的对照表,判断D列成绩对应的评议结果。
公式为:
=VLOOKUP(D2,H:I,2)
提示:
VLOOKUP函数第四参数被省略,在近似匹配模式下返回查询值的精确匹配值或近似匹配值。如果找不到精确匹配值,则返回小于查询值的最大值。
使用近似匹配时,查询区域的首列必须按升序排序,否则无法得到正确的结果。
4、逆向查询
如图,需要从B~E的数据表中,根据H3单元格的部门,查询对应的姓名。
公式为:
=VLOOKUP(H3,CHOOSE({1,2},D2:D11,C2:C11),2,0)
提示:
VLOOKUP函数的查询值要求必须位于查询区域中的首列,如果被查找值不在数据表的首列时,需要先将目标数据进行特殊的转换。
CHOOSE函数第一参数使用常量数组{1,2},将查询值所在的D2:D11和返回值所在的C2:C11整合成一个新的两列多行的内存数组。
生成的内存数组符合VLOOKUP函数的查询值必须处于数据区域中首列的要求。VLOOKUP函数以职务做查询条件,在内存数组中查询并返回对应的姓名信息,从而实现了逆向查询的目的。
5、多条件查询
如图,需要从B~E的数据表中,根据H3单元格的部门和I3单元格的职务,查询对应的姓名。
J3单元格公式为:
=VLOOKUP(H3&I3,IF({1,0},D2:D11&E2:E11,C2:C11),2,)
提示:
使用连接符“&”将部门和职务合并成新的字符串,以此作为VLOOKUP函数的查询条件。
IF部分,先将D列的部门和E列的职务进行连接,再使用IF({1,0}的方式,构造出部门职务在前、姓名在后的内存数组。
VLOOKUP函数在IF函数构造出的内存数组首列中查询部门职务字符串的位置,返回对应的姓名。
数组公式,不要忘了按<Ctrl+Shift+Enter>组合键。
6、一对多查询
如图,需要从B~E的数据表中,根据H3单元格的职务,查询对应的多个姓名。
首先在A2单元格输入以下公式,向下复制:
=(E2=$H$3)+A1
然后在I3单元格输入以下公式,向下复制:
=IFERROR(VLOOKUP(ROW(A1),A:C,3,0),"")
提示:
C列的职务每重复出现一次,A列的序号增加1。
VLOOKUP函数使用1至N的递增序列作为查询值,使用A:C列作为查询区域,以精确匹配的方式返回与之相对应的B列的姓名。注意查找区域必须由辅助列A列开始。
最后将辅助列字体设置为白色或进行隐藏即可。
7、按指定次数重复数据
如图,需要根据C列指定的次数,重复显示B列的内容。
首先在A2单元格输入以下公式,向下复制:
=A1+C2
然后在E2单元格输入以下公式,向下复制:
=IFERROR(VLOOKUP(ROW(A1),A:B,2,0),E3)&""
转载请注明来源"ExcelHome"并保留原文链接。
固定链接:http://www.excelhome.net/lesson/article/excel/1872.html
VLOOKUP函数常用套路大全的更多相关文章
- excel实用技巧——vlookup函数
1.VLOOKUP函数的套路 VLOOKUP(要找谁,在哪儿找,返回第几列的内容,精确找还是近似找) 最后一个参数: 如果为0或FASLE,用精确匹配方式,而且支持无序查找: 如果为TRUE或被省略, ...
- [No00000F]Excel快捷键大全 Excel2013/2010/2007/2003常用快捷键大全
一个软件最大的用处是提高工作效率,衡量一个软件的好坏,除了是否出名之外,最主就是能否让一个新手更快的学会这个软件和提高工作速度.就拿Excel表格来说吧,平常办公中我们经常会用它来制作表格,统计数据或 ...
- db2常用命令大全
#显示这个DB2错误的解释信息(SQLSTATE 5位数字)db2 ? 42704 #显示这个SQLCODE的解释信息(SQLCODE 四位数字) db2 ? SQL0204N ##查看数据库指定配置 ...
- MongoDB(1):常用操作命令大全
MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...
- 【转】windows常用消息大全(系统消息、通告消息、用户消息)
原文网址:http://blog.csdn.net/nupt123456789/article/details/7370562 附录A Windows 常用消息大全 表A-1 Windows消息分布 ...
- javascript常用代码大全
http://caibaojian.com/288.html 原文链接 jquery选中radio //如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...
- PHP常用代码大全(新手入门必备)
PHP常用代码大全(新手入门必备),都是一些开发中常用的基础.需要的朋友可以参考下. 1.连接MYSQL数据库代码 <?php $connec=mysql_connect("loc ...
- Eclipse常用快捷键大全1
Eclipse常用快捷键大全 1.ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字 ...
- Excel快捷键大全 Excel2013/2010/2007/2003常用快捷键大全
一个软件最大的用处是提高工作效率,衡量一个软件的好坏,除了是否出名之外,最主就是能否让一个新手更快的学会这个软件和提高工作速度.就拿Excel表格来说吧,平常办公中我们经常会用它来制作表格,统计数据或 ...
随机推荐
- Netbeans文件被误删怎么办?
辛辛苦苦写的代码突然不见了,上午还是有的,哪去了?怎么办? 破解办法: 1,良好的版本管理工具(git||svn)使用习惯,代码每天上传更新,技术文件有丢失,也就一天的. 2,Netbeans提供的备 ...
- 集成 solr6.5.1到 tomcat7(8) 中 (解决java.lang.NoSuchMethodError问题)
♣下载solr安装包 ♣安装solr ♣solr应用部署到tomcat下 ♣配置web.xml ♣在tomcat7启动 ♣改为在tomcat8启动 ♣在自带的Jetty里启动 ♣建立第一个Core 安 ...
- 一、Python介绍
Python 是一门什么样的语言? python是一门动态解释性的强类型定义语言. 编程语言主要从以下几个角度为进行分类,编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言,每个分类代 ...
- 王垠:我和Google的故事
也许有人看见过我批判 Google 的那篇英文文章.它好像有一部分片面性,所以被我从英文博客上拿下来了.我一直在反思自己在 Google 的经历,因为在这个公司工作总是感觉不对劲,但是却总也说不清楚为 ...
- Redis实现数据库读写分离
Redis简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作 ...
- Flex中通过RadioButton进行切换
1.页面切换 <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx=& ...
- freemarker写select组件报错总结(六)
1.错误描述 六月 26, 2014 10:53:26 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...
- struts2的配置文件
struts2的配置文件 1.配置Action的struts.xml 2.配置Struts2有关属性的struts.properties
- flask中jinjia2模板引擎使用详解5
接上文 宏 可以理解为函数,即把一些常用的模板片段做好封装,以便于重用,减少工作量和维护难度. 宏的定义很简单: {%macro xxx()%} ##这里写内容 {%endmacro%} 下面引用 ...
- 笔记:promise实例+注释
////////////////////////////////////////////// var data = [1,2,3,4]; var promise = new Promise((reso ...