說明
使用此函式可檢查多個條件,並返回與第一個 TRUE 條件對應的值,而無需嵌套多個IF 語句。可與CHILDREFS 搭配使用。
語法
IFS(logical_test1, value_if_true1, […, logical_test_127, value_if_true_127])
輸入
此函式接受下列參數
| 名稱 | 必要 | 說明 | 有效輸入 |
|---|---|---|---|
logical_test_1 |
是 | 要評估的第一個條件。 | 任何可以求值為 TRUE 或 FALSE 的值或表達式。 |
value_if_true_1 |
是 | 如果logic_test_1 為 TRUE,則會返回值。 |
任何值,包括文字、數字或邏輯值。 |
logic_test_n, |
選用 | 額外的條件和結果對。 | 與logic_test_1 和value_if_true_1 的條件相同。 |
範例
範例資料
| A | B | |
|---|---|---|
| 1 | 分數 | 等級 |
| 2 | 95 | A |
| 3 | 84 | 非常好 |
| 4 | 75 | 貨物 |
| 5 | 無分數 | |
| 6 | 60 | 失敗 |
公式範例
| 使用案例 | 公式 | 說明與結果 |
|---|---|---|
| 使用一系列條件指派一個信件等級給一個分數。 | =IFS(A2>=90,"A",A2>=80,"B",A2>=70,"C",A2>=60,"D",TRUE,"F") |
此公式的工作方式如下:
對於此資料集,此公式回報"A" 。 |
| 使用一組分層條件,根據分數提供描述性評估。 | =IFS(A3>95, "Excellent",A3>82, "Very Good",A3>75, "Good",A3>65, "Satisfactory",TRUE, "Needs Improvement") |
此公式的工作方式如下:
對於此資料集,公式會回傳"Very Good" 。 |
| 指派詳細的信件或描述性等級,包括「傑出」或「完美」類別。 | =IFS(A4=100,"Perfect",A4>=90,"Outstanding",A4>=80,"Great",A4>=70,"Good",A4>=60,"Pass",TRUE,"Fail") |
此公式的工作方式如下:
對於此資料集,公式會回報"Good" 。 |
| 根據所提供者的值提供基本的及格/不及格等級,同時處理空白儲存格和無效分數。 | =IFS(ISBLANK(A5),"No Score",A5>100,"Invalid",A5>=70,"Pass",TRUE,"Fail") |
此公式的工作方式如下:
對於此資料集,公式回傳"No Score" 。 |
| 根據所提供者的值提供基本的及格/不及格等級,同時處理空白儲存格和無效分數。 | =IFS(ISBLANK(A6), "No Score",A6>100, "Invalid",A6>=70, "Pass",TRUE, "Fail") |
此公式的工作方式如下:
對於此資料集,公式回報"Fail" 。 |
附註
- IFS 依序評估條件,並返回第一個 TRUE 條件對應的值。
- 如果沒有條件為 TRUE,也沒有最後的 TRUE 條件,IFS 會返回 #N/A 錯誤。
- IFS 最多可處理 127 個條件/值對。
- 對於多重條件,IFS 比嵌套的IF 語句更有效率且更易於閱讀。
提示
- 總是包含最後的 TRUE 條件,以處理沒有其他條件符合的情況。
- 當您需要檢查兩個以上的條件時,請使用 IFS 而非嵌套的IF 語句。
- 確保您的條件是互斥的,以避免意外的結果。
- 對於複雜的邏輯測試,您可以在 IFS 條件中使用AND,OR, 和NOT 函數。
- 處理大型資料集時,請考慮使用VLOOKUP 或INDEX/MATCH ,以獲得更佳效能。