网站首页 > 技术文章 正文
作者:兰色幻想-赵志东 转自:Excel精英培训
众所周知,vlookup只能从左向右查找,而不能从右至左的反向查找。为此高手们设计了一个让无数新手迷惑的公式。今天兰色将彻底帮同学们解开这个迷团。
【例】如下图所示要求根据姓名反查工号
公式:
=VLOOKUP(A9,IF({1,0},B2:B6,A2:A6),2,0)
公式中最难理解的就是IF({1,0},B2:B6,A2:A6),这也是今天兰色要讲解的要点。
{1,0}是什么?它是一个由两个数字构成的常量数组。如果放在单元格里,相当于2列1行的数据范围(数组中列用","逗号分隔)。
IF函数的用法是
IF(判断式,如果条件成立返回的值,如果条件不成立返回的值)
判断式是可以返回true或false的表达式,也可以是返回非零的数字或0的表达式或值。非零数字如1表示条件成立,0表示条件不成立。
如:
IF(1,100,200) 返回100
IF(0,100,200) 返回200
而
IF({1,0},100,200)呢?由一个数替换成一组数。IF会分别用1和0作为第1个参数进行计算,也就是说会进行2次计算,返回2个结果,分别是 100 和200。返回的2个数也会按{1,0]的格式摆放(1行2列),即:{100,200}
而
如果100和200不是一个值,而各为一组值呢?如本例中
IF({1,0},B2:B6,A2:A6)
返回的将不是一组2个值,而是2列5行的一组值。如果放在单元格区域中,应该是这样子的:
其实也可以这样理解
IF({1,0},B2:B6,A2:A6),
把B2:B6的值放在1的位置,把A2:A6的值放在0的位置。重构成一个2列5行的数组,只是原B列放在第1列,A列放在第2列了。
两列数调换了位置,就可以用VLOOKUP的从左向右查找了。
兰色说:说到底,并不是vlookup函数可以实现反向查找,而是if({1,0}把两列数调换了位置而已。
猜你喜欢
- 2025-01-18 弱类型语言的php对于 0 、"0"、"000" 、"00" 判断与处理问题
- 2025-01-18 word中公式输入方法
- 2025-01-18 VLOOKUP函数之另类用法,让领导对你刮目相看
- 2025-01-18 LOOKUP中0,1是什么鬼,困扰我多年的疑惑,这课讲明白了
- 2025-01-18 Excel – 在多个匹配结果中,按规定查找出第n个结果
- 2025-01-18 从入门到提高一一函数定义域
- 2025-01-18 C语言return 0一定要有吗?
- 2025-01-18 什么是0℃恒温器?
- 2025-01-18 VLOOKUP函数只能从左向右匹配查找?与IF函数搭配实现逆向查找
- 2025-01-18 TCP连接状态的多种判断方法
- 05-11官方资源!多所知名高校课程,这个平台免费开放→
- 05-11说好的免费课程学剪辑 怎么会“花”掉10万?
- 05-11免费公开!中小学国家课程教材电子版来了
- 05-11338所知名高校50万门课,全免费!赶紧收藏
- 05-11免费课程来了,快来解锁你的艺术“超能力”吧~
- 05-10热学和湿度超稳定的一维钙钛矿(钙钛矿eqe)
- 05-10C#上位机基于SMTP实现邮件报警通知
- 05-10Android平台上最好的几款免费的代码编辑器
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- js判断是否空对象 (63)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- js数组插入 (83)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- outofmemoryerror是什么意思 (64)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)