在 Excel 中, IF 函數是很常被使用的,在 IF 函數中可以使用多個條件以達到想要的判別結果。例如在下圖中的例子,要判別數值是否為介於40~80中的奇數,其中要用到三個條件:
(1) 是否大於或等於 40
(2) 是否小於或等於 80
(3) 是否為奇數
以儲存格B2為例,觀察以下三種寫法,都可以達到相同結果:
(1) 儲存格B2:=IF(A2>=40,IF(A2<=80,IF(MOD(A2,2)=1,"V",""),""),"")
利用 IF 函數的巢狀結果,因為有三個判別條件,所以要使用三個 IF 函數。
(2) 儲存格B2:=IF(AND(A2>=40,A2<=80,MOD(A2,2)=1),"V","")
使用一個 IF 函數,藉助 AND 函數,其中以三個條件來判別條件是否成立。
(3) 儲存格B2:=IF((A2>=40)*(A2<=80)*(MOD(A2,2)=1),"V","")
使用一個 IF 函數,使用「*」運算子及三個條件來判別條件是否成立。
因此,思考以下的公式,應該也可以產生相同結果:
儲存格B2:=IF(SUMPRODUCT((A2>=40)*(A2<=80)*(MOD(A2,2)=1)),"V","")
其中 SUMPRODUCT((A2>=40)*(A2<=80)*(MOD(A2,2)=1)),在三個條件都成立時,其結果為「1」,而在 IF 函數中,條件結果為 1,表示條件為「成立」。
【延伸閱讀】
Excel-雙條件查詢(INDEX,OFFSET,VLOOKUP,MATCH)
Excel-雙條件查詢(SUMPRODUCT,INDEX,MATCH)
Excel-根據雙條件來摘要資料(SUMPRODUCT,OFFSET,LARGE)
Excel-資料表利用雙條件查詢列出清單(INDIRECT,ROW,OFFSET,陣列公式)
Excel-在VLOOKUP函數中使用雙條件來查詢(INDIRECT)
Excel-多條件查詢(SUMPRODUCT,OFFSET)