363 | 用VLOOKUP函數代替IF函數實現複雜的判斷 | ||||
示範檔 | 無 | 範例檔 | 363.XLSX | 結果檔 | 無 |
VLOOKUP和IF函數感覺是兩個風馬牛不相及的函數,但在實際判斷運算中,VLOOKUP要比IF函數好用的多,本單元老師將講述如何使用VLOOKUP代替IF函數實現複雜的判斷。
舉例來說:
如果
A1=1 B1=30
A1=2 B1=16
A1=3 B1=23
A1=5 B1=30
A1=8 B1=23
.....
公式:
1 用IF函數判斷
=IF(A2=1,30,IF(A2=2,16,IF(A2=3,23,IF(A2=5,30,IF(A2=8,23)))))
2 用VLOOKUP函數判斷
=VLOOKUP(A2,{1,30;2,16;3,23;5,30;8,23},2,0)
公式中 {1,30;2,16;3,23;5,30;8,23}相當於5列2欄的儲存格區域,如下圖所示。
關於IF和VLOOKUP數的語法同學們如果還不熟悉,可以在部落格中回復VLOOKUP或IF查看詳細教程。
如果IF是進行的區間判斷,怎麼用VLOOKUP函數替換呢?答案是可以用VLOOKUP的模糊查找功能。看下例:
如下圖所示,依據前面數值判斷,其對照表如下圖E:F欄所示
VLOOKUP函數公式為:=VLOOKUP(A5,E1:F5,2)
IF函數公式太複雜,故省略下來。
分析:其實本題是VLOOKUP的模糊查找功能,實現區間判斷。VLOOKUP第4個參數為1、TRUE或省略時,表示查找的模式為模糊查找,在一個升冪排列的範圍內,查找比這個數值小且和它最接近的數值。
如上圖中數值為4,在E列進行查找,比4小的數是E3:F3範圍的值,但和它最接近的數是23,所以公式=VLOOKUP(A5,E1:F5,2)會傳回3所對應的F欄的數值23。
補充:在實際的公式設置中,簡單的條件判斷還是用IF函數直觀,複雜的判斷式可以試一下使用VLOOKUP函數會比較方便容易。
留言列表