說明
使用此函式執行邏輯測試,並在結果為 TRUE 時傳回一個值,而在結果為 FALSE 時傳回另一個值。鏈結中支援。可與CHILDREFS 搭配使用。
IF 允許您在值和您期望的值之間進行邏輯比較。
語法
IF(logical_test, value_if_true, [value_if_false])
輸入
此函式接受下列參數
| 名稱 | 必要 | 說明 | 有效輸入 |
|---|---|---|---|
logical_test |
是 | 您要測試的條件。 | 任何可以求值為 TRUE 或 FALSE 的值或表達式。 |
value_if_true |
是 | 如果logic_test 為 TRUE,則會返回值。 |
結果為上述任何一項的儲存格引用、儲存格範圍、數字、文字字串或公式。硬體編碼的值也是可以接受的。 |
value_if_false |
沒有 | 如果logic_test 為 FALSE,則會返回值。 |
結果為 FALSE 的儲存格引用、儲存格範圍、數字、文字字串或公式。硬體編碼的值也是可以接受的。如果省略,則傳回 FALSE。 |
範例
範例資料
| A | B | |
|---|---|---|
| 1 | 75 | 傳遞 |
| 2 | 60 | 失敗 |
| 3 | 85 | 傳遞 |
| 4 | 45 | 失敗 |
公式範例
| 使用案例 | 公式 | 說明與結果 |
|---|---|---|
| 若識別儲存格中的值大於提供的值,則傳回一值,否則傳回另一值。 | =IF(A1>=70,"Pass","Fail") |
此公式的工作方式如下:
對於此資料集,此公式會返回Pass 。 |
| 如果另一個儲存格中的值大於提供的值,則返回一個儲存格的值,否則返回提供的文字。 | =IF(A2>50,B2, "Low Score") |
此公式的工作方式如下:
對於此資料集,此公式會返回Fail 。 |
| 根據所提供儲存格中的分數,回傳指定的結果。 | =IF(A3=85, "Excellent",IF(A3>=70, "Good", "Needs Improvement")) |
此公式的工作方式如下:
對於此資料集,此公式會返回Excellent 。 |
| 使用多重巢狀 (的) IF 函數根據分數回報信件等級。 | =IF(A4>90,"A",IF(A4>80,"B",IF(A4>70,"C",IF(A4>60,"D","F")))) |
此公式的工作方式如下:
對於此資料集,此公式返回F 。 |
附註
- IF 函數最多可以嵌套 64 層。
- 如果省略
value_if_false參數,當不符合條件時,IF 會返回 FALSE。 -
logic_test參數可以使用任何比較運算符號 (=, <>,<,>,<=,>=)。 - 您可以將 IF 與AND,OR, 以及NOT 函數結合,在 logic_test 參數中建立更複雜的條件。
- 您可以將 IF 與其他函數結合,例如ISBLANK,ISNUMBER 等,以進行更進階的邏輯測試。
提示
- 對於多重條件,請考慮使用IFS 函式 (Excel 2016 及更新版本中提供) 來取代嵌套 IF 語句。
- 使用IFERROR 函式處理IF 語句中的潛在錯誤。
- 在 IF 函數中處理文字時,請記住 Workiva 試算表預設不區分大小寫。
- 若要測試多個條件,您可以在
logic_test參數中使用AND 或OR 函數。 - 對於包含多個條件的複雜情況,請考慮使用VLOOKUP 或INDEX/MATCH 組合,而非多個嵌套 IF。