當(dāng)VLOOKUP遇上IF,一切困難迎刃而解
VLOOKUP有一些眾所周知的先天性缺陷,如:只能從中往右查詢,返回值單一,數(shù)據(jù)區(qū)域要求嚴(yán)格等等,但是當(dāng)它遇到IF,一切苦難迎刃而解。其核心邏輯是用IF結(jié)合數(shù)組構(gòu)建數(shù)據(jù)區(qū)域,而VLOOKUP在構(gòu)建的區(qū)域中查詢,返回。

1.???? IF構(gòu)建數(shù)據(jù)區(qū)域
IF(1,B2:B11,"")第一參數(shù)1,返回固定區(qū)域B2:B11
IF(0,"",A2:A11)第一參數(shù)0,返回固定區(qū)域A2:A11
IF({1,0},B2:B11,A2:A11),將第一參數(shù)設(shè)置為數(shù)組{1,0},同時(shí)返回兩個(gè)數(shù)據(jù)區(qū)域
?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?
2.???? 逆向查詢
=VLOOKUP(E2,IF({1,0},B2:B11,A2:A11),2,0)
此例中構(gòu)建數(shù)據(jù)區(qū)域的目的是調(diào)整查詢數(shù)據(jù)的位置,配合VLOOKUP從左往右查詢的特性。


3.???? 多條件查詢
=VLOOKUP(E2&F2,IF({1,0},$A$2:$A$11&$B$2:$B$11,$C$2:$C$11),2,0)
此例中為解決重名問題,“姓名&性別”作為查詢條件,同時(shí)用IF重新構(gòu)建數(shù)據(jù)區(qū)域,對(duì)應(yīng)的“姓名&性別”作為首列,查詢內(nèi)容作為第二列。


4.???? 返回多個(gè)結(jié)果
=VLOOKUP(E2,IF({1,0},A2:A11,B2:B11&"/"&C2:C11),2,0)
此例中需要同時(shí)返回性別和學(xué)號(hào),通過IF函數(shù)構(gòu)建新的數(shù)據(jù)區(qū)域?qū)崿F(xiàn)。
