對于 Excel 初級玩家來說,,他們都會接觸到一個查找函數(shù) Vlookup。 只不過,,這個函數(shù)真的是讓人又愛又恨?。?/section>愛在它強(qiáng)大的查找功能,,恨在使用它的時候特別容易出錯,。在所有函數(shù)里邊,它的參數(shù)個數(shù)太多,,語法真的太難記,!Vlookup 函數(shù)共有 4 個參數(shù),先來瞧瞧它的基本語法:=VLOOKUP(lookup_value,table_array,col_index_num,[range-lookup])
函數(shù)參數(shù)越多,,就越容易出錯,。我曾經(jīng)還總結(jié)過,使用 Vlookup 經(jīng)常犯的五大錯誤,。 小解析:這里用到 Lookup 函數(shù)的數(shù)組形式:在數(shù)組的第一行或第一列查找指定值,,并返回?cái)?shù)組最后一行或最后一列中對應(yīng)位置的值。
=LOOKUP(lookup_value, array) 公式中 E3 為查找值,,B3:C12 為數(shù)組。Lookup 函數(shù)從姓名列查找 E3 的值('萬陽'),,返回年齡列對應(yīng)的值 66,。下面有一張表,現(xiàn)在要根據(jù)年齡來劃分組別,。青年:18~40 歲 ,;中年:41~65 歲 ,; =LOOKUP(C3,{0,7,18,41,66},{'童年','少年','青年','中年','老年'})
▲ 左右滑動查看 小解析:這里用到 Lookup 函數(shù)的向量形式:在一行或一列中查找值,,返回另一行或另一列對應(yīng)位置的值。 Lookup 函數(shù)向量形式的語法規(guī)則:=LOOKUP(lookup_value, lookup_vector, [result_vector]) =LOOKUP(查找值,查找區(qū)域,,返回結(jié)果區(qū)域)
公式中查找值是 C3,查找區(qū)域是{0,7,18,41,66},,返回結(jié)果區(qū)域是{'童年','少年','青年','中年','老年'}Lookup 函數(shù)在「查找區(qū)域」查找 小于或等于 「查找值」10 的值是 7,并返回「返回結(jié)果區(qū)域」對應(yīng)的值:'少年',。有時候用 Lookup 函數(shù)在查找某個人年齡的時候,,返回的結(jié)果卻出錯了,這是為什么呢,?=LOOKUP(F3,B3:B12,D3:D12) 正確的答案應(yīng)該是 85,,但是結(jié)果卻是 27,一定是哪里出問題了,,但是細(xì)看公式又沒有問題,。其實(shí),出錯的原因在于 Lookup 函數(shù)的第 2 參數(shù):查找區(qū)域必須是「升序」排序,。所以我們在使用 Lookup 函數(shù)的時候,,需要事先對第二參數(shù)的區(qū)域進(jìn)行排序。如果不想要事先進(jìn)行升序排序,,可以使用如下的經(jīng)典用法:=LOOKUP(1,0/(條件=條件區(qū)域),返回區(qū)域) PS:經(jīng)典用法,,主要利用了 Lookup 可以忽略錯誤值的特點(diǎn)。? Lookup 函數(shù)可以分為數(shù)組型查找和向量型查找兩種形式,。 數(shù)組型查找:=LOOKUP(lookup_value, array) 向量型查找:=LOOKUP(lookup_value, lookup_vector, [result_vector]) =LOOKUP(查找值,查找區(qū)域,,返回結(jié)果區(qū)域)
? 由于 Lookup 函數(shù)使用二分法的形式進(jìn)行查找,,所以在使用 Lookup 函數(shù)時,第二參數(shù)需要注意進(jìn)行升序排序,。若想在未排序中查找,,可以用如下經(jīng)典用法:=LOOKUP(1,0/(條件=條件區(qū)域),返回區(qū)域) 好了,本文到這里先結(jié)束了,,關(guān)于 Lookup 函數(shù)更多用法詳細(xì)解析,,我們下一篇文章接著繼續(xù)探討~
|