函數分類
表 4-1 邏輯值函數
函數名稱 功能
TRUE 返回邏輯值 TRUE
FALSE 返回邏輯值 FALSE
表 4-2 條件判斷函數
函數名稱 功能
AND 判斷多個條件是否同時成立
IF 根據條件判斷返回不同結果
IFERROR 當公式計算結果為錯誤時,返回指定值;否則返回公式
計算結果
IFNA 若公式計算結果為錯誤,返回指定值;否則返回公式計
算結果
NOT 對參數的邏輯值求反
OR 判斷多個條件中是否至少有一個條件成立
XOR 返回所有參數的"異或"值
04 邏輯函數 邏輯函數是指根據一定的條件,對數據進行處理的函數。
在條件式中使用比較運算符號指定邏輯式,使用邏輯值表示運
算結果。邏輯值是用 TRUE、FALSE 之類的特殊文本表示指定
條件是否成立。條件成立時為邏輯值 TRUE,條件不成立時為
邏輯值 FALSE。在 Excel 2013中的邏輯函數可以分為邏輯值函
數和條件判斷函數兩類,共 9個函數,下面介紹具體應用。
106
使用 TRUE函數,在單元格中即可顯示 TRUE。
注意:
不使用 TRUE 函數,直接在單元格中輸入文本 TRUE,然后
按下【Enter】鍵,則單元格中同樣顯示邏輯值 TRUE。
TRUE
返回邏輯值 TRUE
函數格式: TRUE()
參數說明: 無參數
注意事項: 該函數無參數。如果在()內制定參數,則會返回錯誤值。
可以在單元格或者公式中直接輸入 TRUE,而不使用該函數,
Excel會自動將其轉換為邏輯值 TRUE。
邏輯值
函數
案例 單元格內顯示 TRUE
在 單 元 格 中 輸 入 公 式
=TRUE(),按下【Enter】鍵即
可顯示邏輯值 TRUE。
107
下面以判斷兩列數據是否相同為例,介紹 FALSE用法。
在單元格 D2 中輸入公式
=B2=C2,然后按下【Enter】,
不同的返回 FALSE,相同的
返回 TURE。
FALSE
返回邏輯值 FALSE
函數格式: FALSE()
參數說明: 無參數
注意事項: 該函數無參數。如果在()內制定參數,則會返回錯誤值。可
以在單元格或者公式中直接輸入 FALSE,而不使用該函數,
Excel會自動將其轉換為邏輯值 FALSE。
AND
判斷多個條件是否同時成立
邏輯值
函數
條件判斷
函數
案例 單元格內顯示 FALSE
108
判斷員工的考試成績是否為優秀,即所有的考試科目均大於
等於 90時才為優秀,只要有一科小於 90,其成績都不是優秀。
選中目標單元格
單擊【插入函數】
按鈕,打開【函數
參數】對話框
案例 判斷成績是否為優秀
函數格式: AND(Logical1,Logocal2,…)
參數說明: Logical1:此參數為必需,是要測試的第一個條件,其計算
結果可以要測試的其他條件,其計算結果可以為 TRUE ,也可
以是 FALSE。最多可包含 255 個條件。
Logocal2…:要測試第 2~255個條件。
注意事項: 參數的計算結果必須是邏輯值 TRUE或 FALSE,或者是包
含邏輯值的數組或單元格引用。如果指定的單元格區域未包含
邏輯值,則會返回錯誤值#VALUE!。
如果參數為數組或單元格引用,其中的文本和空白單元格
會被 AND函數忽略。
109
在【或選擇類別】
下拉列表中選擇【邏
輯】選項
在【選擇函數】列
表框中選擇【AND 函
數】
在【函數參數】對
話框中設置參數,然
后單擊【確定】按鈕
B2、C2、D2、E2中的
數據均大於等於 90,
所以顯示為 TRUE
E2中的數據小於 90,
所以顯示為 FALSE
110
判斷成績是否為優秀 案例
函數格式: IF(logical_test, [value_if_true], [value_if_false])
參數說明: logical_test:該參數為必需選項,計算結果為 TRUE 或
FALSE、用來測試的值或表達式。
value_if_true:該參數為可選選項,表示參數 logical_test
結果為 TRUE 時返回的值。如果參數 logical_test 的結果為
TRUE,但是省略了參數 value_if_true(即參數 logical_test后僅
有一個逗號時),IF函數將返回 0。
value_if_false:該參數同樣為可選選項,表示參數
logical_test結果為 FALSE時返回的值。
如果參數 logical_test 的結果為 FALSE 並且省略參數
value_if_true,IF函數將返回 0,形如 IF(A1>60, "通過",),在
value_if_true參數后面保留一個逗號。
如果參數 logical_test 的結果為 FALSE 並且參數
value_if_true省略,IF函數將返回 FALSE,形如 IF(A1>60, "通
過"),在參數 value_if_true后面省略參數 value_if_false。
注意事項: IF函數最多可以嵌套 64層,創建條件復雜的表達式來進行
測試。
IF
根據條件判斷返回不同的值
條件判斷
函數
111
單元格區域 B3:B9 中的數據如果大於 30000,則評為優秀,
否則評為一般。
單擊【插入函數】按
鈕,選擇【IF】函數
選中目標單元格
在【函數參數】對話
框中輸入參數,然后單
擊【確定】按鈕
此時在編輯欄中顯
示了公式,並向下填充
公式
B3 中的數據大於
3000,條件為真,所以
評定為優秀
112
條件為真且省略參數
value_if_true,在單
元格中顯示為 0
在編輯欄中輸入如圖
所示公式並向下填充
在編輯欄中輸入如圖
所示公式
因為條件為真且參數
value_if_false 省略
時,所以在單元格中顯
示為 FALSE
條件判斷函數
IFERROR
若計算結果錯誤,返回指定值,否則返回公式結果
函數格式:
IFERROR(value, value_if_error)
參數說明: value:該參數為必需選項,檢查是否存在錯誤參數。
value_if_error:該參數為必需選項,表示當計算結果發生錯
誤時返回的值。計算錯誤的類型:#N/A、#VALUE!、#REF!、
#DIV/0!、#NUM!、 #NAME? 或 #NULL!。
注意事項: 1. 如果兩個蠶食是空單元格,則 IFERROR 將其視為空字
字符串值 ("")。
2.如果 Value 是數組公式,則 IFERROR 為 value 中指定
區域的每個單元格返回一個結果數組。
113
在下表中給出了兩組數據,現在對兩組數的比值進行計算,
我們可以利用 IFERROR函數檢驗公式是否存在錯誤。
案例 檢驗公式是否存在錯誤
選中單元格 C2
單擊【插入函數】按鈕
選擇【邏輯】函數
選擇【IFERROR】函數
單擊【確定】按鈕
輸入參數內容
單擊【確定】按鈕
114
利用 LOOKUP 函數可以在一些數據區域中查找某些符合條
件的數據,其具體內容我們在后面的章節進行介紹。此處我們介
紹利用 IFNA函數檢驗 LOOKUP函數是否存在錯誤。
單元格 C2 中顯示計
算結果
條件判斷
函數
IFNA
若計算錯誤返回指定的值;否則返回公式的結果。
函數格式: IFNA(value, value_if_na)
參數說明: value:該參數為必需選項,是用於檢查錯誤值 #N/A 的參
數。
value_if_na :該參數為必需選項,表示公式計算結果為錯
誤值 #N/A 時要返回的值。
注意事項: 1. 若兩個參數是空單元格,則 IFNA 將其視為空字符串
值 ("")。串值 ("")。
2. 如果 Value 是數組公式,則 IFNA 為 Value 中指定區
域的每個單元格以數組形式返回結果。
案例 檢驗 LOOKUP 函數是否存在錯誤
115
"LOOKUP("陳靜",A2:A8),"表示在單元格區域 A2:A8中查找
姓名陳靜,由於在姓名區域中不存在陳靜,所以公式
"=IFNA(LOOKUP("陳靜",A2:A8),"不存在")"返回指定值"不存
在",當查找內容存在時,就返回查找內容,即 公式
"=IFNA(LOOKUP("陳琳琳",A2:A8),"不存在")"就會返回結果"陳
琳琳"。
在單元格 A10中輸
入如圖所示公式,然
后按下【Enter】鍵
在單元格 A11中輸
入如圖所示公式,然
后按下【Enter】鍵
NOT
對參數的邏輯值求反
條件判斷
函數
函數格式: NOT(logical)
參數說明: logical :該參數為必需條件,計算結果為 TRUE 或 FALSE
的任何值或表達式。
116
在某次考試中成績大於等於 60分的,即可通過考試,成績小
於 60 分,則需要參加第二次考試。在單元格 C2 中輸入公式:
=NOT(>=60),然后按下【Enter】鍵,並將公式填充到單元格區域
C3:C8中。
注意事項: 1.參數可以是邏輯值 TRUE 或 FALSE,或者是可以轉換為
邏輯值的表達式。對於數字來說,0等價於邏輯值 FALSE,非 0
等價於邏輯值 TRUE。
2.若參數為數組或者單元格引用,NOT 函數將會忽略其中
包含的文本、空單元格。
3.若參數是直接輸入的非邏輯值,NOT 函數將會返回錯誤
值#VALUE!。
案例 確定參加第二次考試的人員
條件判斷
函數
OR
判斷多個條件中是否至少有一個成立
因為單元格 B2 中的
數值大於 60,所以顯
示 FALSE
因為單元格 C2 中的
數值大於 60,所以顯
示 TRUE
117
在 OR 函數的參數指定多個條件中,若任意一個參數的計算
結果為 TRUE,則函數的返回值為 TRUE,如圖所示。
公式 說明 結果
=OR(TRUE,TRUE…) 所有參數結果均 TRUE TRUE
=OR(FALSE,FALSE…) 所有參數結果均 FALSE FALSE
=OR(TRUE,FALSE,FALSE…) 至少有一個參數 TRUE TRUE
函數格式: OR(logical1, [logical2], ...)
參數說明: logical1:該參數為必選條件,表示要測試的第一個條件,
其結果可以是 TRUE或 FALSE。
logical2 ...:表示要檢測的第 2~255個條件,其結果可以是
TRUE或 FALSE。
注意事項: 1.參數可以是邏輯值 TRUE 或 FALSE,或者是可以轉換為
邏輯值的表達式。
2.如果數組或引用參數中包含文本或空白單元格,則這些值
將被忽略。
3.如果指定的區域中不包含邏輯值,則 OR 返回錯誤值
#VALUE!。
案例 1 判斷一個以上條件是否成立
118
案例 2 判斷各科成績全部大於 90 分
選中目標單元格
F2
單擊【插入函數】
按鈕
在【或選擇類別】
下拉列表中,選擇
【邏輯】選項
在【選擇函數】列
表框中,選擇【OR】
函數
在【函數參數】對
話框中設置參數,然
后單擊【確定】按鈕
119
單元格 B2:E2中的
值均大於 90,所以顯
示為 TRUE
單元格 B4:E4中的
值均小於 90,所以顯
示為 FALSE
條件判斷
函數
XOR
返回所有參數的邏輯異或值
函數格式: XOR(logical1, [logical2],...)
參數說明: logical1:該參數為必選條件,表示要測試的第一個條件,
其結果可以是 TRUE或 FALSE。
logical2 ...:表示要檢測的第 2~254個條件。
注意事項: 1. 參數計算結果必須為邏輯值,如 TRUE 或 FALSE,或
者為包含邏輯值的數組或引用。如果指定的區域中不包含邏輯
值,則 XOR 返回錯誤值 #VALUE! 。
2.如果數組或引用參數中包含文本或空白單元格,則這些值
將被忽略。
3.可以使用 XOR 數組公式檢查數組中是否出現某個值。若
要輸入數組公式,請按 Ctrl+Shift+Enter。
4.當 TRUE 輸入的數字為奇數時,XOR 的結果為 TRUE;
當 TRUE 輸入的數字為偶數時,XOR 的結果為 FALSE。
120
異或也叫半加運算,其運算法則相當於不帶進位的二進制加
法:二進制下用 1 表示真,0 表示假,異或(xor)的邏輯符號"^"
形象表示為:
1 ^ 0 = 1
0 ^ 1 = 1
0 ^ 0 = 1
1 ^ 1 = 0
或者
True ^ False = True
False ^ True = True
False ^ False = False
True ^ True = False
案例 返回所有參數的邏輯異或值
在編輯欄輸入如
圖所示公式,然后按
下【Enter】鍵
在 A2 中顯示了邏
輯值 FALSE