IF 函數會驗證設定的邏輯條件,當條件成立時回傳一個指定值,不成立時回傳另一個指定值。常用於業績計算、成績及格判斷等需要依條件顯示不同結果的報表整理工作。
Excel IF 函數語法
=IF(條件判斷, [成立時回傳值], [不成立時回傳值])| 參數 | 必填 | 說明 |
|---|---|---|
| 條件判斷 | 是 | 要進行測試的邏輯條件,計算結果必須為 TRUE 或 FALSE。 |
| 成立時回傳值 | 選填 | 當條件判斷結果為 TRUE 時,儲存格要顯示的值。若省略則回傳 0。 |
| 不成立時回傳值 | 選填 | 當條件判斷結果為 FALSE 時,儲存格要顯示的值。若省略則回傳 FALSE。 |
回傳:根據條件判斷結果所指定的數值、文字或公式計算結果。
適用版本:所有 Excel 版本皆支援(包含 Excel 2003、2007、2010、2013、2016、2019、2021 與 Microsoft 365)。
IF 函數範例
範例 1:基礎條件判斷:學生成績及格與否
判斷學生成績是否及格,60分以上顯示「及格」,否則顯示「不及格」。
| 姓名 | 分數 | 結果 |
|---|---|---|
| 王小明 | 85 | |
| 陳怡君 | 58 | |
| 林志明 | 60 |
在 C2 輸入公式:
=IF(B2>=60, "及格", "不及格")結果:及格。判斷 B2 儲存格的分數是否大於或等於 60。因為 85 符合條件,所以回傳「及格」。
範例 2:數值計算:依據業績發放獎金
依據業績是否達標來計算獎金,達標發放 5000,未達標則不發放(0)。
| 業務員 | 業績 | 目標 | 獎金 |
|---|---|---|---|
| 張建國 | 150000 | 100000 | |
| 李美玲 | 80000 | 100000 |
在 D2 輸入公式:
=IF(B2>=C2, 5000, 0)結果:5000。比較 B2(實際業績)與 C2(目標)的大小。張建國的業績大於目標,條件成立,因此回傳數字 5000。
範例 3:空白儲存格判斷:檢查出勤打卡狀態
檢查出勤打卡紀錄,若無時間紀錄則標示「缺卡」,有紀錄則顯示「正常」。
| 員工 | 打卡時間 | 狀態 |
|---|---|---|
| 王小明 | 08:50 | |
| 陳怡君 |
在 C2 輸入公式:
=IF(B2="", "缺卡", "正常")結果:正常。判斷 B2 儲存格是否為空白(以兩個雙引號表示)。因為 B2 有打卡時間資料,條件不成立,故回傳「正常」。
使用 IF 的技巧與注意事項
- 在 IF 函數中如果要回傳文字,文字前後必須加上半形雙引號;若是回傳數字或儲存格參照則不需要。
- 若有多個條件需要同時判斷,可以將 IF 函數與 AND 或 OR 函數搭配使用。
- 當需要判斷三個以上的條件時,建議使用 IFS 函數,公式會比多層嵌套的 IF 函數更容易閱讀與修改。
IF 常見錯誤與解決方法
| 錯誤 | 原因 | 解決方法 |
|---|---|---|
| #NAME? | 公式中輸入的文字沒有加上雙引號,導致 Excel 誤以為是未知的函數或名稱。 | 確保公式中所有的文字字串前後都有加上半形的雙引號(例如 "及格")。 |
| 結果顯示為 0 | 在第二或第三個參數中輸入了逗號,但沒有輸入任何值。 | 若要在條件成立或不成立時讓儲存格留空,請明確輸入兩個連續的雙引號 ""。 |
Google 試算表可以用 IF 嗎?
Google 試算表完全支援 IF 函數,語法與用法和 Excel 完全相同,可直接套用。
下載 IF 範例檔
上面的範例都整理在這個檔案裡,每個範例一個工作表,黃色格子是公式,可以直接改資料看結果變化:IF 範例.xlsx(範例公式都在試算表軟體實際計算過)。
常見問題
IF 函數可以判斷多個條件嗎?
可以。如果需要多個條件同時成立,可以在條件判斷處使用 AND 函數;如果只要其中一個成立即可,則使用 OR 函數。若是有多種不同情境要分別回傳不同結果,建議改用 IFS 函數。
為什麼公式結果顯示 0,而不是空白?
當條件不成立且公式中完全省略第三個參數時,Excel 預設會回傳 FALSE;但如果打了逗號卻沒有輸入任何值,就會回傳 0。要顯示空白,請在參數中明確輸入兩個雙引號 ""。
IF 函數的條件可以比對中文字嗎?
可以。你可以使用等號比對文字,例如 A1="台北"。請注意,Excel 在進行文字比對時不區分英文字母大小寫,如果要區分大小寫,需搭配 EXACT 函數使用。
相關函數
這篇收錄在「Excel 函數字典」。




