在上图中,B11单元格,输于一个公式,直接用鼠标右拉、下拉即可查询出所有数据(问号区域)。先直接贴出公式。
B11:=VLOOKUP($A11,$A$3:$F$8,COLUMN(B2),0)
第一参数:$A11,通过工号查找,列标A前面加入了美元($)符号,表示在公式在向右拉的过程中,第一参数始终是A列不变(记忆方法,给了钱后就位置就不跑了。可通过选中A11,然后循环按F4键,快速的添加$符号)
第二参数:$A$3:$F$8,查找的区域。由于公式需要向右、向下拉动,所以在列标前,行号前都加入了$符号,这样向右拉动,向下拉动,查找区域都不会发生变化。
第三参数:Column(B2),查找的值在第几列。此处用了column函数,用于返回查找的值在第几列(column返回参数所在的列的序号。A列,序号1;B列,序号2;C列,序号3,以此类推)
第四参数:0,精确查找。
二、vlookup函数模糊查找
会计工作中,经常有如上需求,通过单位简称,查询对应的应收账款余额。在此处,则用到通配符模糊查找。
E19公式:=VLOOKUP("*"&D19&"*",A19:B24,2,0)
第一参数:"*"&D19&"*",单位简称,通过连接符号(&),在D19单元格字符的前后分别加了通配符星号(*),使第一参数的值为:*长圣*,表示查找的值中只要包括“长圣”字符,即符合条件。
第二参数:A19:B24,在哪里查找,即查找的区域;
第三参数:2,应收账款余额,在第二参数区域中的第2列;
第四参数:0,精确查找(仍然是精确查找哦,非0时的模糊查找,以后再分享)
三、vlookup函数反向查找
在vlookup函数中,第二参数的第一列,为第一参数所在的列。在上图中,通过工号查找姓名,而源表中,姓名列在工号列的前面,导致无法满足”第二参数的第一列,为第一参数所在的列”的条件。那如何解决呢?只能通过IF函数构造内存数组(通过IF函数,把工号变成第一列,把姓名变成第二列)
B39公式:=VLOOKUP(A39,IF({1,0},B31:B36,A31:A36),2,0)
第一参数:A39,查找的值,即工号;
第二参数:IF({1,0},B31:B36,A31:A36),IF函数,第一参数为{1,0},即{真,假}。通过{1,0}使得第二参数变成了一个内存数组:{"A001","张三";"A002","李四";"A003","王五";"A004","赵六";"A005","周七";"A006","钱八"},暂时看不明白不要紧,记住这个特殊用法就行(有时候,只能意会,不可言传。主要问题是,我也说不大清楚,大写的尴尬啊~~呵呵)
第三参数:2,要查找的值在区域中第2列;
第四参数:0,精确查找。
四、vlookup函数多条件查找
我们也经常遇到如上比较奇葩的表格,需要通过往来户+帐户,查找对应的余额。这种情况跟上一例情况基本相同,需要使用IF({1,0},第一列,第二列)来构造内存数据查询,同时,第一参数变成了两个条件(往来户&帐户)。
C62公式:{=VLOOKUP(A62&B62,IF({1,0},A50:A59&B50:B59,C50:C59),2,0)}
第一参数:使用连接符号连接往来户与帐户,A62&B62,结果为"江苏长圣有限公司应收账款"
第二参数:IF({1,0},A50:A59&B50:B59,C50:C59),与上一例反向查找一样,通过内存数组,连接往来户与帐户,第二参数的结果形如下图。
第三参数:2,要查找的值在区域中第2列;
第四参数:0,精确查找。
特别注意:此公式录入结束后,需要按【Ctrl+Shift+Enter】三键结束,使之变成数组公式。
五、写在最后面的话
本文知识点较多,特来总结一下(这就是惊喜啦~~哈哈)
F4:快速添加$符号(给了钱,参数就不动了);Shift+F3:快速输入函数;Column:返回参数所在列的列序;另她有一个姐妹函数Row,返回参数所在行的行序;vlookup函数通配符的使用,星号(*)任意字符,问号(?)任意单个字符;函数中连接符(&)的使用,可使两个字符连接;IF({1,0},第一列,第二列)构造内存数组;Ctrl+Shift+Enter(回车键),录入数组公式。
我是一个会计,专注分享属于会计人的Excel知识,欢迎来撩,嘎嘎。
最最后面,告诉大家一个阅读文章的好习惯,先关注,再点赞、后评论、再转发~~~哈哈。
下篇文章将分享《vlookup函数常用的错误分析及解决方法》。
多选|上面这些使用方法,您都会哪些?期待大神
vlookup函数批量查找 vlookup函数模糊查找 vlookup函数反向查找 vlookup函数多条件查找 只会其中几个 第一次接触 打开百度APP进行投票