DATE 函數的作用是將三個獨立的數字(年、月、日)合併成一個標準的 Excel 日期。這在處理系統匯出資料,或是需要透過公式動態推算特定日期時非常實用。
Excel DATE 函數語法
=DATE(年, 月, 日)| 參數 | 必填 | 說明 |
|---|---|---|
| 年 | 是 | 決定年份的數字。建議輸入 1900 到 9999 之間的四位數年份。 |
| 月 | 是 | 決定月份的數字。若大於 12 或小於 1,Excel 會自動往前後年份推算。 |
| 日 | 是 | 決定日期的數字。若大於該月天數或小於 1,Excel 會自動往前後月份推算。 |
回傳:代表特定日期的序列值,通常會依據儲存格格式顯示為日期。
適用版本:所有 Excel 版本皆支援
DATE 函數範例
範例 1:合併拆分的日期欄位
系統匯出的員工資料中,到職日的年、月、日被拆分成三個獨立欄位,需要合併為標準日期以便後續計算。
| 員工姓名 | 到職年 | 到職月 | 到職日 |
|---|---|---|---|
| 王小明 | 2023 | 5 | 15 |
| 陳怡君 | 2024 | 11 | 1 |
在 E2 輸入公式:
=DATE(B2, C2, D2)結果:2023/05/15。將 B2 的年份、C2 的月份與 D2 的日期數字,合併成標準的日期格式,方便後續計算年資。
範例 2:動態推算合約到期日
已知合約的起始日期與合約期限(幾個月),需要計算出合約的到期日。
| 合約編號 | 起始日期 | 合約期限(月) |
|---|---|---|
| C-001 | 2025/08/10 | 6 |
| C-002 | 2026/01/15 | 12 |
在 D2 輸入公式:
=DATE(YEAR(B2), MONTH(B2)+C2, DAY(B2))結果:2026/02/10。透過 YEAR、MONTH、DAY 函數將起始日期拆解,並在月份加上合約期限。DATE 函數會自動處理月份超過 12 時的進位問題。
範例 3:計算特定月份的最後一天
進行薪資結算時,需要根據指定的年份與月份,自動產生該月的月底最後一天日期。
| 結算年份 | 結算月份 |
|---|---|
| 2026 | 10 |
| 2027 | 2 |
在 C2 輸入公式:
=DATE(A2, B2+1, 0)結果:2026/10/31。將月份加 1 推至下個月,並將日期設為 0。DATE 函數會將 0 日解釋為上個月的最後一天,藉此精準算出該月的月底日期。
使用 DATE 的技巧與注意事項
- DATE 函數的「月」與「日」參數支援負數與零。例如日期輸入 0 代表上個月的最後一天,輸入負數則會繼續往前推算。
- 若年份輸入 0 到 1899 之間的數字,Excel 會自動加上 1900。例如輸入 125 會被計算為 2025 年,建議一律輸入完整的四位數年份以避免混淆。
- 合併後的結果若顯示為 40000 以上的整數(如 45210),是因為儲存格格式為「通用格式」,請將格式更改為「短日期」即可正常顯示。
DATE 常見錯誤與解決方法
| 錯誤 | 原因 | 解決方法 |
|---|---|---|
| #NUM! | 年份參數小於 0 或大於 9999。 | 確認年份數值是否落在 1900 到 9999 的有效範圍內。 |
| #VALUE! | 輸入的參數包含無法轉換為數字的文字。 | 檢查參照的儲存格內容是否包含多餘的空白字元或非數字的文字。 |
Google 試算表可以用 DATE 嗎?
Google 試算表完全支援 DATE 函數,參數與運算邏輯與 Excel 一致,包含月份與日期的自動進位推算功能。
下載 DATE 範例檔
上面的範例都整理在這個檔案裡,每個範例一個工作表,黃色格子是公式,可以直接改資料看結果變化:DATE 範例.xlsx(範例公式都在試算表軟體實際計算過)。
常見問題
DATE 函數算出來的結果變成一串數字怎麼辦?
這是因為儲存格格式設定錯誤。請選取該儲存格,點擊滑鼠右鍵選擇「儲存格格式」,並將數值格式更改為「日期」,即可顯示正常的日期外觀。
如何用 DATE 函數算出每個月的最後一天?
可以將 DATE 函數的「日」參數設定為 0,並將「月」參數加 1。例如 =DATE(2026, 11, 0) 會回傳 2026 年 10 月 31 日,Excel 會自動推算為上個月的最後一天。
如果 DATE 函數的月份輸入超過 12 會發生什麼事?
Excel 會自動將超過的月份進位到下一年。例如 =DATE(2026, 14, 1) 會被轉換為 2027 年 2 月 1 日,這個特性非常適合用來推算幾個月後的日期。
這篇收錄在「Excel 函數字典」。




