在 Excel 中處理日期資料時,常需要將完整日期拆解為年、月、日三個部分。MONTH 函數能從日期值中擷取「月份」的部分(即 1–12 的整數),適合用於報表分類、條件判斷、動態篩選與資料標記等場景。
🔹快速摘要(語法、用途、常見場景)
- 用途:從日期中擷取「月份」的數值(1–12)
- 語法:
=MONTH(日期值) - 常見場景:日期拆解、報表分類、條件判斷、動態篩選、資料標記
一、MONTH 函數語法與用途
語法說明:
=MONTH(serial_number)
- serial_number:有效的日期值,可為儲存格、日期函數或文字型日期
- 回傳結果為該日期的「月份」部分(1–12)
=MONTH("2025/10/28") 回傳 10。二、範例教學:五個基礎 + 五個進階範例
🔸基礎範例
範例一:擷取指定日期的月份
=MONTH("2025/10/28")
回傳 10。
範例二:擷取儲存格中的日期月份
=MONTH(A1)
若 A1 為 2025/03/15,回傳 3。
範例三:搭配 TODAY 擷取本月月份
=MONTH(TODAY())
回傳今天所屬的月份。
範例四:搭配 DATE 建立完整日期
=DATE(2025,MONTH(A1),1)
保留原月,重建日期。
範例五:處理文字型日期
=MONTH(DATEVALUE("2025/12/01"))
回傳 12。
🔸進階範例
範例六:搭配 IF 判斷是否為上半年
=IF(MONTH(A1)<=6,"上半年","下半年")
用於報表分類。
範例七:搭配 TEXTJOIN 合併月份資訊
=TEXTJOIN("、", TRUE, "目前月份為", MONTH(A1))
輸出如「目前月份為、3」。
範例八:批次擷取整欄日期的月份(Excel 365)
=MAP(A2:A100, LAMBDA(x, MONTH(x)))
將 A2:A100 中每列日期轉為月份。
範例九:建立動態標記欄位
=IF(MONTH(A1)=12,"年底","")
標記每年最後一個月。
範例十:搭配 MOD 判斷是否為偶數月份
=IF(MOD(MONTH(A1),2)=0,"偶數月","奇數月")
用於月份分類。
三、常見問題解答(FAQ)
Q1:MONTH 可以處理文字型日期嗎?
可以,但建議搭配 DATEVALUE 確保格式正確。
Q2:MONTH 回傳的是什麼格式?
回傳整數(1–12),代表日期中的「月份」。
Q3:MONTH 可以處理整欄資料嗎?
可以,搭配 MAP 或拖曳填滿即可批次處理。
Q4:MONTH 可以搭配哪些函數使用?
常見搭配 DATE、TODAY、IF、TEXT、MAP、LAMBDA 等。
Q5:MONTH 可以處理日期時間嗎?
可以,會擷取日期部分的「月份」,忽略時間。
四、注意事項與錯誤排除
- 若輸入非有效日期,會回傳
#VALUE! - 若輸入為空白儲存格,回傳
0或錯誤 - MONTH 只擷取「月份」,不含年或日
- 適用於報表分類、條件判斷與動態篩選
- 建議搭配錯誤防呆邏輯處理格式異常輸入
五、延伸技巧與相關函數
1. DATE 函數 與 MONTH 的連動應用:可用 MONTH 擷取月份後重建日期,例如 DATE(2025,MONTH(A1),1)。
2. TODAY 函數 與 MONTH 的連動應用:可擷取本月月份,例如 MONTH(TODAY())。
3. IF 函數 與 MONTH 的連動應用:可根據月份進行分類,例如 IF(MONTH(A1)<=6,"上半年","下半年")。
4. TEXT 函數 與 MONTH 的連動應用:可將月份轉為文字輸出,例如 TEXT(A1,"mm")。
5. MAP / LAMBDA 函數 與 MONTH 的連動應用:可批次擷取整欄日期的月份,例如 MAP(A2:A100, LAMBDA(x, MONTH(x)))。
這些函數能與 MONTH 組合成一套完整的「日期拆解 → 條件分類 → 格式輸出 → 批次處理」流程,適用於報表設計、資料清理與欄位標示等場景。
六、結語與延伸閱讀推薦
MONTH 函數是 Excel 中專門處理日期拆解的基礎工具,適合用在報表分類、條件判斷、欄位標示與資料清理等情境。學會 MONTH 後,你可以進一步探索:
- [DATE 函數教學]:組合年、月、日建立完整日期
- [TODAY 函數教學]:取得當日日期並進行拆解
- [MAP 函數教學]:批次處理與格式比對的動態技巧













