IF函數是Excel中使用頻率非常高的一個函數。如果分析數據時,面臨的是“如果……,那么……,否則……”這樣的問題,就可以考慮使用IF函數。 1 函數語法 IF函數的語法如下: IF(logical_test,[value_if_true],[value_if_false]) logical_test指邏輯測試,例如“5>2”、“4<3”。邏輯測試的結果為True(真)或False(假)。“5>2”是正確的,這個邏輯測試成立,那么就返回True。“4<3”是錯誤的,這個邏輯測試不成立,那么就返回False。 value_if_true指如果邏輯測試結果為True,返回什么值。 value_if_false指如果邏輯測試結果為False,返回什么值。 總之,IF函數的功能是,先進行邏輯測試,如果成立返回一個值,如果不成立,返回另一個值。 例如下面的示例中,以“60”分作為分界線判斷是否及格。如果分數大于等于60,那么及格,否則不及格。 在C2單元格輸入的公式為: =IF(B2>=60,"及格","不及格") 因為B2單元格的分數為“89”,“89>=60”是成立的,所以C2單元格的公式返回“及格”。而B3單元格的分數為“56”,“56>=60”不成立,所以C3單元格的公式返回“不及格”。 在IF函數中進行邏輯測試時,經常要使用比較運算符。 下圖中列出了Excel中使用的六個比較運算符及各自的含義。例如“>”的含義是“大于”。在單元格輸入公式“=5>3”,返回結果為“TRUE”。 接下來通過示例來講解IF函數的基礎用法,多個IF函數嵌套的用法,以及IF函數和OR/AND函數組合的用法。 2 用法示例 1、基礎用法 如果銷售業績大于等于銷售目標,那么返回“完成”,否則什么都不返回。 在D2單元格輸入公式:=IF(C2>=B2,"完成","") 在這個例子中,如果邏輯測試成立,返回值“完成”,如果不成立,什么都不返回,用一對英文雙引號("")來表示什么都不返回。 2、IF函數嵌套 在IF函數的嵌套用法中,邏輯測試不成立時,返回的是IF函數,這個IF函數繼續進行邏輯測試成立與否的判斷。 例如下圖示例中,如果分數>=90為“優”,分數>=80為“良”,分數>=60為“及格”,分數<60為“不及格”。 在C2單元格輸入公式: =IF(B2>=90,"優",IF(B2>=80,"良",IF(B2>=60,"及格","不及格"))) 這個公式的含義是,如果分數>=90,那么返回“優”,不滿足該條件,繼續用IF函數判斷,如果分數>=80,那么返回“良”,否則仍繼續用IF函數判斷,如果分數>=60,那么返回“及格”,否則返回“不及格”。 當滿足一個邏輯測試條件時,IF函數就不再繼續向后判斷了。比如B2單元格的分數“92”,“92>=90”,邏輯測試成立,返回“優”,不再繼續判斷。B3單元格的分數“56”,“56>=90”不成立,繼續向下判斷,“56>=80”也不成立,繼續向下判斷,“56>=60”仍然不成立,所有邏輯測試均不滿足,因此返回“不及格”。 在IF函數嵌套中,從前向后依次判斷條件是否成立,如果滿足條件,就不再向后判斷了。因此,IF函數嵌套中要注意邏輯測試的順序。 在IF函數嵌套中,每進行一次邏輯測試,都要寫一次IF函數。這樣未免有些麻煩。Excel2019引入了新函數IFS函數。在IFS函數中,只需要羅列邏輯測試及邏輯測試成立時返回的值即可,不需要重復輸入函數。 如下圖所示,在C2單元格輸入公式: =IFS(B2>=90,"優",B2>=80,"良",B2>=60,"及格",B2<60,"不及格") 該公式的含義是:如果B2>=90,返回“優”;如果不滿足該條件,再看是否滿足B2>=80,如果成立則返回“良”;還不滿足條件繼續判斷B2>=60,成立則返回“及格”;最后如果B2<60,返回“不及格”。 3、和and函數組合 如果同時滿足多個條件時,返回一個值,任意一個條件不滿足,則返回另一個值。這類問題需要if函數和and函數組合在一起使用。 And函數的語法為: =AND(logical1,[logical2],…) 當所有邏輯判斷均為True時,And函數返回True;只要有一個邏輯判斷為False,and函數返回False。 比如下圖,D2單元格輸入公式:=AND(B2>=60,C2>=60) 當B2、C2的值都大于等于60,D2返回True;B2、C2有一個小于60,D2返回False。 當科目1和科目2的分數均大于等于60時,返回“通過”,否則返回“不通過”。 在D2單元格輸入公式: =IF(AND(B2>=60,C2>=60),"通過","未通過") 4、和or函數組合 如果滿足任意一個條件時,返回一個值,所有條件都不滿足,則返回另一個值。這類問題需要if函數和or函數組合在一起使用。 Or函數的語法為: =OR(logical1,[logical2],…) 當任意一個邏輯判斷為True時,Or函數返回True;所有邏輯判斷都為False,Or函數返回False。 比如下圖,D2單元格輸入公式:=Or(B2>=60,C2>=60) 當B2、C2的值有一個大于等于60,D2返回True;B2、C2都小于60,D2返回False。 當科目1和科目2任一科目分數大于等于60時,返回“通過”,科目1和科目2分數都小于60時,返回“不通過”。 在D2單元格輸入公式: =IF(OR(B2>=60,C2>=60),"通過","不通過") ![]() 點個在看你最好看 ![]() |
|