vlookup这个缺点,只需要用个数组公式,就能轻松实现反向查询

作者&投稿:司马闻 (若有异议请与网页底部的电邮联系)
~

使用vlookup查询数据的同学,可能经常遇到需要返回的数据在查找值左侧的情况。

比如,下图的数据表:

通过店铺名称,我们希望能匹配到对应的一级大区名称,但是大区名称数据,却是在店铺名称的左侧。

由于vlookup存在一个功能上的缺陷,那就是,返回列数据,必须要在查找值数据的右侧,函数才能正确的返回数据。

这就导致vlookup没法正常查询上表中的一级大区名称。

「不过你可以用以下3种方法来解决这个问题。」

通过改变原表结构,让返回值列在查找值列右侧就好了。

快捷调整行列顺序的方法如下:

鼠标点击B列标题,选中整个B列。

然后鼠标移动到选中的绿色边框线上,鼠标箭头变成四向移动箭头,左键点击不放,同时按住shift键不放。

最后向左拖动到合适的位置,先放开鼠标左键,再放开shift键即可移动完成。

「但是」 ,公司有些表,TA不准改!不准改!不准改啊!

所以你可以用下面两种方法。

函数公式如下:

注意到了吗?

原本vlookup的第二个参数,我们换成了一个数组公式 IF({1,0},$B$1:$B$5,$A$1:$A$5)

如果在空白单元格直接输入这个数组公式,会的到这样的结果。

是不是正好是将店铺名称和大区名称互换位置了。

{1,0} 是一个一维数组常量,在if函数中,1被认为是True,0就是False。

if函数会根据这个一维数组中的值,依次来判断,是1,则返回第二个参数,是0则返回第三个参数。 我们分别在第2和第3参数选上对应的数据区域,就可以实现两个数据区域的调换。

因为最终生成的vlookup查找区域,是两列数据,所以最终的返回值是在第2列,这也是为什么vlookup的第3个参数是2。

微软早就发布了一个新查找引用函数xlookup,它比vlookup功能更强大。

函数语法如下: =XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

xlookup不讲武德,直接取消了vlookup原本的查找区域包含查找值和返回值的模式。

xlookup的第一个参数是查找值,第二个参数是查找值所在数据区域,第三个参数是返回值所在区域。

所以压根不用管谁在谁的左边右边,实现公式如下:

这个函数目前在Excel 2016及以上和WPS最新版可用。如果你目前没法使用这个函数,也可以使用index加match组合搭配来实现上面的需求。

index+match函数的查找引用公式如下:

match函数用于返回查找值在查找区域的所在行数,index会根据这个函数,返回第一个参数的数据区域中对应行数的数据。

我将持续发布vlookup函数使用过程中可能遇到的各种案例问题,如果你正遇到类似的难题,可以留言评论,说不定下期就是答案了。

赶紧转发收藏起来,以后遇到这一系列问题,就可以派上用场。





Vlookup\/lookup函数如何查找一组重复试验数据?
推荐做法:对同类数据进一步细分,比如 A-1,可以细分为 A-1-1,A-1-2,A-1-3...总之尽可能做到唯一性。否则的话(以A类为例):找到 “A-1”的起始位置(Match函数);然后依次向下偏移引用;G11=INDIRECT("D"&(MATCH("A-1",C:C,0)+F11-1))基于偏移的引用有个缺点,一旦数据出现无规...

EXCEL中函数VLOOKUP与函数LOOKUP的区别
; 3、如果明细数据包含重复记录,那么在升序排列的情况下,使用Lookup()函数可以返回重复记录的最后一条,而Vlookup()则可以返回第一条记录; 4、由于Vlookup()函数的第3个参数是指定返回的列标,对于多列的数据确定列数就很麻烦,我们可以用Lookup()来代替Vlookup(); 5、前面提到Vlookup()只能向右...

lookup返回错误值
公式:=LOOKUP(1,0\/((E2:E10=B22)*(A2:A10=C22)),F2:F10)提问公式错误的原因在于缺少了本例中那对红色的括号,加上就行了。如果公式要下拉的,还应加上绝对引用符号$,则公式:=LOOKUP(1,0\/((E$2:E$10=B22)*(A$2:A$10=C22)),F$2:F$10)

怎样用LOOKUP函数调用另一个工作表中的数据?
IF函数缺少取值指向col_index_num和range_lookup。即下列公式中的3和0。=IF(ISERROR(VLOOKUP(A4,'ID1'!A$11:$C320,3,0)),"",VLOOKUP(A4,'ID1'!A$11:$C320,3,0))若仍不能取值,再按以下公式调整下索引列格式,第一两表索引列日期格式设置下,并通过“替代”将“-”替换成“-”,没...

求解一个EXCEL函数公式的解释
SEARCH在这个字符串中,分别查找{"","免","缺","免*缺","缺*免"}各元素的位置,得出相应的数字,位置越后,数字越大。再在前面加上“-”,使原数字越大,结果越小(同时也都比0小,方便LOOKUP查找0的位置)。LOOKUP在这组负数中查找0值(公式中略写了0),找到相对位置后(多个数值时返回...

如何利用excel匹配多列数据?
在Excel中高效处理多列数据匹配,VLOOKUP函数是不可或缺的得力工具。这个公式=IFERROR(LOOKUP(1,0\/(A2B2C2=Sheet2!$A$2:$A$1155&Sheet2!$B$2:$B$1155&Sheet2!$C$2:$C$1155),Sheet2!$D$2:$D$1155),)让你的工作效率翻倍。以下是使用步骤:首先,打开两个需要匹配的数据表,确保你要...

excel vlookup函数的问题。
关于VLOOKUP函数的用法 “Lookup”的汉语意思是“查找”,在Excel中与“Lookup”相关的函数有三个:VLOOKUP、HLOOKUO和LOOKUP。下面介绍VLOOKUP函数的用法。一、功能 在表格的首列查找指定的数据,并返回指定的数据所在行中的指定列处的数据。二、语法 标准格式:VLOOKUP(lookup_value,table_array,col_index...

为什么在Vlookup函数输入数据后,结果显示# N\/ A?
可能的原因和解决方法 遗漏数据,取而代之的是 #N\/A 或 NA()用新数据取代 #N\/A。注释 可以在数据还不可用的单元格中输入 #N\/A。公式在引用这些单元格时,将不进行数值计算,而是返回 #N\/A。为 HLOOKUP、LOOKUP、MATCH 或 VLOOKUP 工作表函数的 lookup_value 参数赋予了不适当的值 请确保 ...

在VLOOKUP函数中出现“# N\/ A”错误怎么办
2、若想修正这个错误,则可以在A10单元格中输入一个A2:A6中存在的学号,如“102”,此时错误值立刻就消失了;3、说明一:关于公式“=VLOOKUP(A10,A2:E6,5,FALSE)”中VLOOKUP的第四个参数,若为FALSE,则表示一定要求完全匹配lookup_value的值;若为TRUE,则表示如果找不到完全匹配lookup_value的值,...

excel利用hlookup函数如何实现横向数据源的数据表匹配
我们常说两张表的匹配问题。vlookup函数有个兄弟叫hlookup缺很少用到。但一旦碰到这类问题,hlookup函数应该还是要出场的。绝对是vlookup函数对吧! 但当贴出第二张图的时候发现不对。表格的数据怎么是横着放的?好吧,hlookup函数出场。具体操作如下:=HLOOKUP(B4,Sheet2!$A$1:$J$2,2,0)Hlookup...

丰泽区13672048005: 请教excel高手解决关于vlookup函数不足!!! -
仍骅左甲: 假设客户在b2:b10,还款在c2:c10,要查找的客户名在d2,查询的结果在e2,e3,e4.... a1=0,a2=($d$2=b2)+a1,下拉填充到a10 e2=IF(ISNA(VLOOKUP(ROW(1:1),$A$2:$C$10,3,0)),"",VLOOKUP(ROW(1:1),$A$2:$C$10,3,0)) 下拉填充

丰泽区13672048005: EXCEL表想要VLOOKUP多行数据好像不可行,求助
仍骅左甲:你好:苹果在A1,B1 C1 D1 分别是b1 b2 b3 表二A1输入苹果,B1公式如下: =vlookup($a1,表一!$a:$d,column(a2),0) 写完公式后,把这个公式向右,向下拉,就有后边两列了. 我用了绝对地址标志 & 这个符号,可以固定单元格地址. vlookup()函数有个缺点,就是只能显示第一次查找的数,重复的不能显示.

丰泽区13672048005: 如何将excel表中多项内容替换,如将a替换成1,将b替换成2,将c替换成3,以此类推.多个表格需 -
仍骅左甲: 如果需要调整的表格是在一个工作簿里面的多份工作表,那直接在查找替换的对话框里将范围选择为“工作簿”即可,如果分散在多个工作簿的话,就比较麻烦,可能需要将这个工作表都挑选出来,放在一个工作簿里,如果这些工作表的命名是呈某种规律的,是可以通过工作表的名字判断是否是你需要的表的话,合并的工作可以通过VBA来完成,包括你将的a 替换成1,b替换成2,每张表里要替换无数多个数值,都能通过VBA来完成,至于函数的话,有个SUBSTITUTE()是替换的,还有个char()函数能将数字转化成字母,比如char(26)就等于A

丰泽区13672048005: VLOOKUP函数只针对数字吗,可以是文字吗 -
仍骅左甲: 不只针对数字,可以是文本. VLOOKUP函数是Excel中的一个纵向查找函数,在工作中都有广泛应用,例如可以用来核对数据,多个表格之间快速导入数据等函数功能.功能是按列查找,最终返回该列所需查询列序所对应的值;与之对应的...

丰泽区13672048005: EXCEL中,vlookup使用有哪些要注意的,经常查找不到. -
仍骅左甲: 我在使用vlookup公式常出现的错误有:1、查找参数引用方法出错,应该是列绝对引用,即在列标号前输入符号“$".2、引用区域要使用绝对引用,即在列标号、行标号前都输入符号“$”.3、第三个参数用“COLUMN()”,填充公式时不容易出错.

丰泽区13672048005: vlookup使用中出现的问题 -
仍骅左甲: 可能是文本有问题,如前后多了空格或是其他一些无法显示的字符,如果从其他地方拷贝数据经常会出现这种情况.如果文本是数字,可能会因“数值”还是“字符串”格式不同导致找不到.

丰泽区13672048005: excel 中vlookup 使用方法? -
仍骅左甲: 1.打开Excel 2.按F1键,呼出帮助 3.在搜索栏里面输入 vlookup,点击搜索 4.找到了你要的东西,慢慢看,有例子.

丰泽区13672048005: EXCEL中的VLOOKUP、HLOOKUP如何使用? -
仍骅左甲: 如何使用以下两个最常用的查询函数:VLOOKUP 和 HLOOKUP.在函数名中,V 代表着纵向,而 H 代表着横向.当您需要搜索一列或多列信息时可使用 VLOOKUP,当您需要搜索一行或多行信息时可使用 HLOOKUP.使用 VLOOKUP 搜索多...

丰泽区13672048005: vlookup函数的用法⊥vlookup函数的用法 -
仍骅左甲: 表一 A列举例:学号,想从表一中取到某个学号的成绩 在B列设置函数=VLOOKUP(A1:学号 B列:成绩 表二 A列

丰泽区13672048005: 函数vlookup的用法 -
仍骅左甲: 单元格输入=vlookup然后按下ctrl和A,那几个参数都有解释.如果你还看不懂,就在看一下帮助.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网