vlookup函式的「反向」查詢是怎麼完成的?

2021-08-31 04:05:55 字數 1021 閱讀 6060

眾所周知,vlookup只能從左向右查詢,而不能從右至左的反向查詢。為此高手們設計了乙個讓無數新手迷惑的公式。

【例】如下圖所示要求根據姓名反查工號

公式:=vlookup(a9,if(,b2:b6,a2:a6),2,0)

公式中最難理解的就是if(,b2:b6,a2:a6),這也是要點。

是什麼?它是乙個由兩個數字構成的常量陣列。如果放在單元格裡,相當於2列1行的資料範圍(陣列中列用","逗號分隔)。

if函式的用法是

if(判斷式,如果條件成立返回的值,如果條件不成立返回的值)

判斷式;是可以返回true或false的表示式,也可以是返回非零的數字或0的表示式或值。非零數字如1表示條件成立,0表示條件不成立。

如:if(1,100,200)返回100

if(0, 100,200)返回200

而if(,100,200)呢?由乙個數替換成- -組數。if會分別用1和0作為第1個引數進行計算,也就是說會進行2次計算,  返回2個結果,分別是100和200。返回的2個數也會按的格式擺放

(1行2列),即:

如果100和200不是乙個值,而各為一-組值呢?如本例中

if( ,b2:b6, a2:a6)

返回的將不是一組2個值,而是2列5行的一-組值。如果放在單元格區域中,應該是這樣子的:

其實也可以這樣理解

f( ,b2:b6,a2:a6), 

把b2:b6的值放在1的位置,把a2:a6的值放在0的位置。重構成乙個2列5行的陣列,只是原b列放在第1列,a列放在第2列了。

兩列數調換了位置,就可以用vlookup的從左向右查詢了。

Excel 查詢函式 VLOOKUP

vlookup是乙個查詢函式,給定乙個查詢的目標,它就能從指定的查詢區域中查詢返回想要查詢到的值。它的基本語法為 vlookup 查詢目標,查詢範圍,返回值的列數,精確or模糊查詢 1 查詢目標 就是你指定的查詢的內容或單元格引用。本例中表二a列的姓名就是查詢目標。我們要根據表二的 姓名 在表一中a...

EXCEL 查詢函式 VLOOKUP

函式的語法為 vlookup 要找誰,在哪兒找,返回第幾列的內容,精確找還是近似找 第一引數是要在 或區域的第一列中查詢的值。第二引數是需要查詢的單元格區域,這個區域中的首列必須要包含查詢值,否則公式將返回錯誤值。如果查詢區域中包含多個符合條件的查詢值,vlookup函式只能返回第乙個查詢到的結果。...

EXCEL查詢函式VLOOKUP和HLOOKUP

查詢函式就是 我們有乙個值,在另乙個位置 區域 找到該值的匹配值,然後顯示駐留在對應於該匹配值的行或列的字詞或數字到函式所在單元格。結合後面的例子將更易理解。兩個基本查詢函式 vlookup 和 hlookup,在函式名中,v 代表著縱向,而 h 代表著橫向。vlookup 在 陣列的首列查詢值,並...