如果您指定的情況結果為 TRUE,則傳回某一個值,若結果為 FALSE,則傳回另一個值。
IF 函數可用以測試數值和公式的條件。
語法
IF(logical_test,value_if_true,value_if_false)
Logical_test 是用來計算 TRUE 或 FALSE 的任何值或運算式。例如,[Quarter1]=100 是邏輯運算式;如果在該欄之一列 ([Quarter1]) 中的值等於 100,則運算式計算的結果為 TRUE。否則運算式計算的結果會是 FALSE。這個引數可以使用任何比較計算運算子。
Value_if_true 是指如果 logical_test 為 TRUE,則會傳回該值。例如,如果此引數為文字字串 "在預算內",並且 logical_test 引數計算結果為 TRUE,則 IF 函數會顯示出文字 "在預算內"。如果 logical_test 為 TRUE,且 value_if_true 值為空的,則此引數會傳回 0 (零)。若要顯示出 TRUE 這個字,請對此引數使用邏輯值 TRUE。Value_if_true 可以用在其他公式。
Value_if_false 是指如果 logical_test 為 FALSE,則會傳回該值。例如,如果此引數為文字字串 "超出預算",並且 logical_test 引數計算結果為 FALSE,則 IF 函數會顯示出文字 "超出預算"。如果 logical_test 為 FALSE,並且忽略 value_if_false (也就是在 value_if_true 之後,沒有逗點),則邏輯值會傳回 FALSE。如果 logical_test 為 FALSE,並且 value_if_false 值為空的 (也就是說在 value_if_true 之後,逗點後跟隨著右括弧),則傳回 0 (零)。Value_if_false 可以用在其他公式。
註解
範例 1
欄1 | 欄2 | 欄3 | 費用 | 公式 | 描述 (結果) |
---|---|---|---|---|---|
50 | =IF([費用]<=100,"在預算內","超出預算") | 如果數字小於或等於 100,公式就會顯示出 "在預算內"。否則,函數會顯示出 "超出預算"。(在預算內) | |||
23 | 45 | 89 | 50 | =IF([費用]=100,SUM([欄1],[欄2],[欄3]),"") | 如果數字等於 100,則三個值會相加。否則,函數會傳回空白文字 ("")。() |
範例 2
實際費用 | 預測費用 | 公式 | 描述 (結果) |
---|---|---|---|
1500 | 900 | =IF([實際費用]>[預測費用],"超出預算","OK") | 檢查第一列是否超出預算 (超出預算) |
500 | 900 | =IF([實際費用]>[預測費用],"超出預算","OK") | 檢查第二列是否超出預算 (OK) |
範例 3
成績 | 公式 | 描述 (結果) |
---|---|---|
45 | =IF([成績]>89,"A",IF([成績]>79,"B", IF([成績]>69,"C",IF([成績]>59,"D","F")))) | 指定第一個成績的字母等級 (F) |
90 | =IF([成績]>89,"A",IF([成績]>79,"B", IF([成績]>69,"C",IF([成績]>59,"D","F")))) | 指定第二個成績的字母等級 (A) |
78 | =IF([成績]>89,"A",IF([成績]>79,"B", IF([成績]>69,"C",IF([成績]>59,"D","F")))) | 指定第三個成績的字母等級 (C) |
在上述範例中,第二個 IF 陳述式也就是第一個 IF 陳述式的 value_if_false 引數。同樣地,第三個 IF 陳述式是第二個 IF 陳述式的 value_if_false 引數。舉例來說,當第一個 logical_test ([成績]>89) 為 TRUE 時,將傳回 "A"。如果第一個 logical_test 為 FALSE,則公式會開始計算第二個 IF 陳述式,依此類推。
字母等級是使用下列關鍵字指定給數字的 (假定只用整數)。
若成績為 | 則傳回 |
---|---|
大於 89 | A |
從 80 到 89 | B |
從 70 到 79 | C |
從 60 到 69 | D |
小於 60 | F |