VLOOKUP 函數(shù)
《WPS 表格操作技巧》連載系列文章前面小魚和大家一起學習到了 VLOOKUP 函數(shù)回还,其表達式為:
=VLOOKUP(查找的值侠姑,查找的區(qū)域,返回的列數(shù),查找的模式)
下面,我們嘗試使用 VLOOKUP 函數(shù)解決一個實際問題:有如下兩張表格:
接下來,小魚希望在成本表中找到各個項目的成本瞄勾,并填入項目表。于是弥激,在項目表成本列錄入如下公式:
奇怪的事情發(fā)生了进陡,VLOOKUP 函數(shù)并未返回計算結果:
而且所有的項目都找不到成本:
之所以所有數(shù)據(jù)都找不到,是因為我們違背了 VLOOKUP 函數(shù)使用的條件:查找的值必須在查找范圍的第一列微服。在成本表中趾疚,我們查找的項目名稱位于最后一列,所以 VLOOKUP 函數(shù)返回找不到。
注:VLOOKUP 函數(shù)使用最重要的一個前提就是查找的值必須在查找范圍的第一列盗蟆,這個第一列可以理解為查找表的索引戈二。
有的讀者可能想到:那調換一下成本表中列的順序,將項目名稱移動到第一列不就可以使用 VLOOKUP 了嗎喳资?
沒錯觉吭,這個辦法可以解決當前的問題。但一般情況下仆邓,是不允許我們所以去更改原數(shù)據(jù)表的鲜滩。所以呢,接下來小魚教大家一招 VLOOKUP 的進階用法:VLOOKUP 函數(shù)與 CHOOSE 函數(shù)結合节值,進行逆序查找徙硅。
CHOOSE 函數(shù)
CHOOSE 函數(shù)是查詢函數(shù)中的一員,其表達式為:
=CHOOSE(選擇第幾個值搞疗,區(qū)域1嗓蘑,區(qū)域2,區(qū)域3...)
即從參數(shù) 區(qū)域1匿乃,區(qū)域2桩皿,區(qū)域3...
中選取指定索引的值進行返回。返回值可以是 1 個:
=CHOOSE(index_num, value1, value2, value3)
也可以是多個:
=CHOOSE({index_num1,index_num1...}, value1, value2, value3)
一般用于重新建立一個虛擬區(qū)間幢炸,配合 VLOOKUP 函數(shù)進行逆序查找泄隔。下面舉例說明 CHOOSE 函數(shù)的用法。
在上述的空白列錄入 CHOOSE 公式:
按 F9
即可查看 CHOOSE 函數(shù)返回的虛擬區(qū)間(以逗號分隔宛徊,返回多組數(shù)據(jù)):
CHOOSE 和 VLOOKUP 實現(xiàn)逆序查找
了解了 CHOOSE 函數(shù)的功能佛嬉,接下來就可以繼續(xù)文章開頭的任務了:首先,在項目表的成本單元格錄入 CHOOSE 公式:
選中錄入公式闸天,按 F9
暖呕,部分筆記本為 Fn+F9
,可以看到運算結果中苞氮,項目位于金額的前面:
接下來湾揽,錄入 VLOOKUP 函數(shù)完成查找工作:
其中,查找的區(qū)域為 CHOOSE 函數(shù)返回的區(qū)域葱淳,CHOOSE 函數(shù)將成本表中的成本和項目名稱以自己的形式返回,并且項目名稱在前抛姑,成本在后赞厕。
最后,使用自動填充定硝,就可以找到所有項目的成本了:
以上就是本節(jié)的全部內容了皿桑,我們來總結一下:
CHOOSE 函數(shù)是查詢函數(shù)中的一員,其表達式為:
CHOOSE(選擇第幾個值,區(qū)域1诲侮,區(qū)域2镀虐,區(qū)域3...)
,可以選擇多個區(qū)域沟绪,并在花括號中指定返回的區(qū)域順序刮便。使用 VLOOKUP 函數(shù)查找時,查找的值必須位于查找區(qū)域的第一列绽慈。
通過 CHOOSE 函數(shù)建立虛擬區(qū)域恨旱,并使用 VLOOKUP 函數(shù)在新的區(qū)域內查詢,可以實現(xiàn)逆序查找坝疼。