vlookup 请在第一个字符前输入单引号?

=VLOOKUP(B2,IF{1,0},5月!B2:B49,5月!C2:E49),2,0)
请问大神 公式哪里错误,不是要输入单引号,就是出现#N/A. 难受 wps

既然是正查数据可以不用IF的,IF({1,0} 通常用于首列和返回列的列交换。
另外,你这种引用方法,涉及到多维数组,如果用,VLOOKUP在核对首列数据的时候,会直接把多维数组带去核对,肯定核对不上的。
建议:
如果你是根据C列的数据,返回B列的数据的话,请把花括号内的1和0的位置交换一下,C列的区域引用,不要一直引用的E列。要引用为单C列 5月!C2:C49
if的第二个参数,如果内容为数字,n转换一下, 如果为文本,用t转换一下,用于降维。
例如T(5月!B2:B49) 或者N(5月!B2:B49),或者T(5月!C2:C49) 或者N(5月!C2:C49)
只需要对数组的首列,也就是IF函数中的true对应的返回值才需要降维。
具体的需要见到原表才能知道你的数据正确与否。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-05-29

    vlookup中使用if({1,0}的目的是为了实现倒查数据。而你的if内首列仍是B列,不存在倒查问题,所以不需要这么写公式,另外,C2:E49是两列用法错误。

    如果你是要查B列,返回C列,公式这么写:

    =VLOOKUP(B2,5月!B2:C49,2,)

第2个回答  2021-05-29
IF那里少了一个(括号
=VLOOKUP(B2,IF({1,0},5月!B2:B49,5月!C2:E49),2,0)
第3个回答  2021-05-30
公式存在2个方面的问题:
1、公式中的区域没有定位,比如B2:B49,应该改成:B$2:B$49
2、不能是C2:E49这样的区域,而只能是列区域,比如:C$2:C$49或者是E$2:E$49这样1列的区域。