編按:說到函數就不得不提起函數中最受歡迎的三大家族:求和家族、查找引用家族、邏輯家族!!!沒錯!今天我們要介紹的就是三大家族之一邏輯函數家族的領頭人:IF函數——很多人難以理解IF函數的多級嵌套使用。其實,把多級嵌套當成剝洋蔥就好了。
IF函數是一個邏輯函數。它的主要功能是根據指定的條件判斷「真」「假」,進而根據真假返回相應的內容。
一、常規使用(單次單條件判斷)
函數用法:
就是判斷某個條件是否成立,成立返回第二參數,不成立則返回第三參數。
舉個慄子:
為了避免產品的脫銷,電商都需要提前備貨。如下圖所示,產品安全庫存是30,當商品庫存大於等於30時,在「庫存提示」處顯示「充足」,小於「30」時,顯示「補貨」。
E5中輸入公式:=IF($D5>=30,"充足","補貨")
二、多級嵌套
慄子舉完了,我們來一個厲害點的嵌套操作吧!嵌套,通常指的是將IF函數的第三參數變成一個新的IF函數返回。嵌套後很像洋蔥,從外往裡,每層一個IF判斷,最多可以有64層。
多級嵌套的求解過程,與剝洋蔥一致。首先剝最外一層,是不是?是,就不用剝了,不是就繼續剝第2層……
一層嵌套,就有一對括號,有多少層嵌套就要寫多少對括號。每對括號的顏色是不同的(在編輯狀態下),最外一層括號肯定是黑色的。害怕漏打括號的小夥伴可以單擊編輯欄,通過查看最外邊的括號是不是黑色判斷括號有無漏打。
1.非區間嵌套
多級嵌套的各級條件都是單點判斷,不是數值區間判定。
譬如:年會摸獎,摸到紅色條,獎勵微波爐,摸到綠色條獎勵自行車,摸到藍色條獎勵數位相機。
C2中輸入公式:
=IF(B2="紅色","微波爐",IF(B2="綠色","自行車","數位相機"))
2.區間嵌套
多級嵌套的各級條件屬於數值區間判斷。
譬如,快過年了,公司決定給不同年齡段的員工發放相應的津貼補助。
D2中輸入公式:
=IF($C2
公式說明:
(1)區間判斷,小夥伴們可千萬別把補助標準中的「10-20歲」寫成「10」,這樣是得不到正確結果的哈~
(2)條件中的數字一定要按順序排列,要麼是升序排列要麼是降序排列。上面例舉中的公式數字就是升序排列的,我們也可以寫成降序排列,只是公式稍長了一點:
=IF($C2>=40,500,IF($C2>=30,300,IF($C2>=20,200,IF($C2>=10,100,0))))
三、單次多條件判斷
前面的兩種,不管是常規用法還是多級嵌套,每次判斷條件都是一個。但有的時候,我們的條件或許有多個。這時可以用AND或OR函數把條件組合起來進行判斷。
1.多個條件是「和」關係(必須同時滿足)
譬如:根據年齡和成績判定是否是優秀青年。
成為優秀青年有兩個並列的條件:年齡小於30,成績大於90。這個時候我們就需要使用AND函數把兩個條件並列在一起。在D2中輸入公式:
=IF(AND(B290),"優秀青年","")
2.多個條件是「或」關係(滿足任意一個)
譬如:根據銷量或盈利金額判定產品是否暢銷。只有銷量大於1000或者盈利大於10000的產品屬於暢銷產品。
多個條件之間是或關係的,用OR函數把條件組在一起。D2中輸入公式:
=IF(OR(B2>1000,C2>10000),"暢銷","不暢銷")
3.多個條件同時存在「和」和「或」關係
譬如:所有女生,以及成績大於等於90分的男生,都有獎品「水果」,其他人沒有。
在D2中寫入公式:
=IF(OR(B2="女",AND(B2="男",C2>=90)),"水果","無")
四、特殊用法:返回區域
前面例舉的幾種用法IF函數都是返回單個值,其實IF函數也可以返回區域。只不過實際應用中當使用IF函數返回區域時,往往IF函數是其他函數的一個參數。
1.返回區域是怎麼回事
首先來看看返回區域是怎麼回事。
譬如,當D2等於1時,我們需要返回所有的蘋果名稱,否則返回所有蘋果的價格。
同時選中E2:E4單元格(單元格數量必須與品名數量一致),然後輸入公式:
=IF(D2=1,B2:B4,A2:A4)
輸入完畢同時按Ctrl+ShIFt+Enter鍵(必須!因為返回的是數組)即可。
在D2中輸入0,返回的就是一串價格:
感覺就是D2等於1,就把品名複製粘貼過來,D2等於0,就把價格複製粘貼過來。
能否把品名和價格同時返回呢?也就是把D2=1和≠1的兩種結果值都返回。可以!這個時候就不用表達式了,因為成立的和不成立的都需要返回。IF的條件判定只有兩個結果,要麼TRUE(用數字1代表)要麼FALSE(用數字0代表),現在兩個結果都要,因此直接用常量數組作為IF函數的第一參數。選中E2:F4區域,輸入公式:
=IF(,B2:B4,A2:A4)
輸入完畢同樣須要按Ctrl+ShIFt+Enter鍵。
感覺就是把品名和價格兩列數據交換順序複製粘貼在指定區域了。
2.返回區域實際運用:Vlookup反向查找
Vlookup查找有一個條件:查找值必須位於查找區域的第1列。如果查找值不在查找區域的第1列,則可以用IF函數返回區域的能力,交換查找區域數列順序,就像我們剛才同時返回品名和價格那樣。這就是Vlookup的反向查找。
譬如下面,需要根據學號查學生姓名。
查找區域A:C,學號在第3列,而不是第1列。怎麼辦?用IF函數的常量數組交換A列和C列組成一個新的查找區域即可。在G2中輸入公式:
=VLOOKUP(F2,IF(,C2:C13,A2:A13),2,0)
今天的IF函數就說到這裡啦~小夥伴們要是覺得文章不錯,記得收藏分享哦!
****部落窩教育-excel函數IF嵌套技巧****
原創:壹仟伍佰萬、小雅/部落窩教育(未經同意,請勿轉載)