Excel IF 系列函數用法教學:多條件判斷搭配AND、OR、NOT
文章推薦指數: 80 %
這裡介紹Excel 的 IF 與 IFS 條件判斷函數的用法,並提供實用的範例公式。
Excel 的 IF 與 IFS 函數可以進行各種條件的判斷,在不同的情況下傳回不同 ...
Blogger舊站
關於
Facebook
Flickr
物聯網
網站架設
程式設計
統計
素食
特價優惠
宗教
物聯網
網站架設
程式設計
統計
素食
特價優惠
宗教
ExcelIF系列函數用法教學:多條件判斷搭配AND、OR、NOT
2018/01/12
10則留言
這裡介紹Excel的IF與IFS條件判斷函數的用法,並提供實用的範例公式。
Excel的IF與IFS函數可以進行各種條件的判斷,在不同的情況下傳回不同的計算結果,是Excel中最熱門且常用的函數之一,以下是IF與IFS函數的用法語實際應用範例。
IF函數
Excel的IF函數是最基本的條件判斷函數,其使用方式為:
=IF(判斷條件,條件成立傳回值,條件不成立傳回值)
假設我們有一些考試成績的分數,若想用IF依據分數來判斷是否及格(60分以上就判定為及格,否則就是不及格),可以這樣寫:
=IF(A2>=60,"及格","不及格")
IF判斷式
巢狀IF判斷式
如果判斷的條件比較複雜,包含多種條件與輸出結果時,可以使用巢狀的IF判斷式。
假設我們想要根據成績來區分等第,規則如下:
等第
分數區間
優等
分數>=90
甲等
80<=分數<90
乙等
70<=分數<80
丙等
分數<70
像這種多條件的判斷問題,就可以使用多個IF組合在一起:
=IF(A2>=90,"優等",IF(A2>=80,"甲等",IF(A2>=70,"乙等","丙等")))
這個巢狀的IF結構看似複雜,但是觀念都跟基本的IF相同,先從最外層的IF開始看起,第一個IF會判斷成績是否有90分,若有90分的話,就直接傳回「優等」,如果沒有90分的話,則進入第二層的IF判斷式。
當進入到第二層的IF判斷式時,代表成績一定在90分以下(因為如果有90分,之前就直接傳回「優等」了,不會進到這裡),所以這裡我們只要判斷成績是否有80分,若有80分的話就傳回「甲等」,否則就再進入下一層IF判斷式。
到了第三層的IF時,成績一定在80分以下,判斷到這裡的時候,就只剩下「乙等」與「丙等」兩個等第可以選擇了,所以就直接看成績是否有70分,若有70分就是「乙等」,否則就是「丙等」。
巢狀IF結構
在撰寫巢狀的IF結構時,要注意安排每個IF判斷式的順序,以上面這個例子來說,我們判斷分數的順序是從高分開始依序往下判斷,而您也可以從低方開始依序往上判斷,這樣在判斷分數的時候每次只需要檢查一邊的條件,會比要好寫。
如果沒有按照分數高低的順序來寫的話,在判斷時就會需要使用AND函數同時檢查兩邊的條件,問題會變複雜許多,所以建議在撰寫這類的IF巢狀結構時,按照順序來寫會比較好。
AND函數
AND函數可以用來判斷兩個條件是否同時成立,若兩個條件同時都成立的話,就傳回True,否則傳回False。
=AND(條件1,條件2)
假設我們現在有兩科不同的考試成績,當兩科的考試成績都在60分以上才算及格,否則就是不及格,這種問題就可以使用IF搭配AND來判斷:
=IF(AND(A2>=60,B2>=60),"及格","不及格")
IF與AND函數
OR函數
OR函數可以用來判斷兩個條件中是否至少有一個是成立的,只要其中一個條件成立(或是兩個都成立),就傳回True,否則傳回False。
=OR(條件1,條件2)
若我們現在只要求兩科的考試成績中,只要有一科達到60分就算及格的話,就可以這樣寫:
=IF(OR(A2>=60,B2>=60),"及格","不及格")
IF與OR函數
NOT函數
NOT就是單純將True轉為False、將False轉為True的函數,以下是個簡單的範例。
假設所有不是優等的等第,都必須進行補考,可以這樣寫:
=IF(NOT(B2="優等"),"是","否")
IF與OR函數
事實上這個例子也可以改寫一下IF判斷式,這樣就可以不需要加上NOT函數了:
=IF(B2="優等","否","是")
大部分的情況下,我們都可以適當改寫判斷的邏輯,省去NOT函數,至於是否要這麼做就要看情況而定,建議盡量讓程式好閱讀、好理解為原則。
IFS函數
IFS函數與IF函數類似,不過它可以依序檢查許多個不同的條件,傳回符合條件的結果,可用來取代多重巢狀的IF結構,讓程式碼更簡潔、好閱讀,不過這個函數只有在Office2016以後才有支援。
其使用方式為:
=IFS(條件1,傳回值1,條件2,傳回值2,...)
我們可以將上面判斷成績等第的範例以IFS判斷式改寫為:
=IFS(A2>=90,"優等",A2>=80,"甲等",A2>=70,"乙等",TRUE,"丙等")
在這個IFS的參數中,我們依序把各種等第的條件與傳回值放進去,這樣它就會傳回對應條件的傳回值,如果所有的條件都不成立的話,IFS就會傳回#N/A錯誤。
如果想要在所有條件都不成立的情況下,傳回指定的值,可將最後一個判斷條件設定為True,這樣只要前面的條件都沒有符合,就一定會傳回最後一個值,等同於else的效果。
Windows
ExcelOffice
G.T.Wang
個人使用Linux經驗長達十餘年,樂於分享各種自由軟體技術與實作文章。
10留言
新增留言→
CH
作者您好,
因為工作的關係經常瀏覽您的文章,想請問函數是否有功能判斷邏輯如下,
1.A~Z這26個項目在特地條件下挑選出10個符合條件的項目
2.超過10個符合條件的項目時,優先順序是字母小到字母大的(A~Z)或是字母大到字母小的(Z~A)
再麻煩請您解惑,這邊先謝謝您了
2019/07/16
回覆
CH
抱歉補充一下,
第1點的特定條件是我給的假設,任意條件都可以
主要是第2點的邏輯函數,謝謝
2019/07/16
回覆
abby
作者您好,
請教您一道題:8.5元/M,最少收40元,計算結果二者選價格高的,怎麽設置公式?這題低於5M就選40元,若超過5m則需要依實際算出的爲準
如果可以設置公式的話,麻煩您解惑,謝謝您喔~
2020/02/12
回覆
Kenny
=IFS(A125,A12*8.5)
2020/10/17
回覆
KENNY
答案不是這樣,但他符號出不來,沒辦法。
2020/10/17
回覆
SAM
=if(條件1*條件2<40,40,條件1*條件2)
2020/10/22
回覆
ALLEN
abby
作者您好,
True成立的情況下,值,不成立的情況下,不傳回False該怎麼做,
例:TODAY()今天True成立的情況,傳回指定的值
明天不成立,不傳回值
相當於固定傳回的值
2020/12/11
回覆
RU
您好我想請問一下
如果要符合下面這個
X≧0.08
0.07≧X≧0.04
0.03≧X
那我X=0.04,EXCEL公式這樣寫
=IF(X<0.04,"X",IF(X<0.08,"X-0.01","X-0.02"))
代出來的答案是0.02
應該是0.03才對呀
請問是哪裡錯了呢
2021/03/18
回覆
WEI
請問是否有函數能完成兩種條件的求值
我目前是已產品名稱去取得我的總入庫數
=SUMIF(表1[[產品名稱]:[入庫數]],I6,表1[入庫數])
若我想要以產品名稱+顏色去取得入庫數要怎麼使用?
例如我的商品名稱為IPHONE12那麼顏色就會分很多種所以想要符合兩項條件才能取值的函數
2021/07/23
回覆
Charles
請問一下同理如果是要判斷語句中的文字,也可使用ifs嗎?
如:
aaa你媽的bbb,–我的….,他有我xxxxxx
分別找出’你媽的’,’我的’,’他有我’
是不是寫成ifs(mid(A2,find(“你媽的”,A2,1),3)>0,”你媽的”,
mid(A2,find(“我的”,A2,1),)>0,”我的”,
true,”他有我”)
2021/08/09
回覆
LeaveaReply取消回覆
留言*
Name*
Email*
Website
搜尋
分類Arduino(5)
BeagleBoneBlack(1)
DIY(46)
Linux(315)
MacOSX(32)
Octave(15)
Perl(12)
R(47)
Windows(97)
WordPress(16)
個人(15)
免費(35)
兒童(28)
實用工具(85)
手機(13)
技巧(45)
有趣(99)
樹莓派(57)
物聯網(55)
玄學(11)
生活(208)
程式設計(137)
統計學(8)
網頁空間(36)
網頁開發(128)
虛擬化(7)
農業(42)
遊戲(9)
開箱(128)
雲端(4)
宗教
如何戒邪淫、遠離婚外情
戒淫寶典:《壽康寶鑑》白話有聲書
公益
台灣世界展望會
社團法人新竹縣愛心物資集發協會
Yahoo奇摩公益
igiving公益網
智邦公益網
©2021G.T.Wang
延伸文章資訊
- 1Excel教學|還不知道Excel邏輯函數IF的用法嗎?看完你就會了!
Excel 邏輯函數教學|IF函數的基本使用方法. 相信大家在文書處理的時候,很常會需要用到判斷的功能,像是申請條件是否合格或是在批改成績的時候,是否 ...
- 2菜鳥救星Excel教學:職場一定會用到的if基礎函數
If 翻譯中文來說就是如果,用法簡單來說就是給他一個條件,讓程式去判斷,如果(if)條件成立執行A事件不成立時執行B事件。
- 3AND 函數
AND 函數. Microsoft 365 Excel ...
- 4如何在Excel中將IF函數與AND,OR和NOT一起使用?
在Excel中,IF函數對於檢查單元格是否滿足條件並根據評估結果(True和False)返回不同的值非常有用。 並將IF函數與AND,OR,NOT函數結合使用,將改變檢查單元格的條件 ...
- 5Excel-IF使用三個條件判斷式(AND,OR,*運算子)
網友問到:在下圖中的Excel 工作表,其中要根據年齡和性別來判定傳回值,條件: 1. 年齡<1或年齡>=66,則不分男女傳回0。 2.