Thep Excel

MONTHดึงเลขเดือน (1-12) จากวันที่

MONTH คืนค่าเดือนเป็นตัวเลขจำนวนเต็มระหว่าง 1 (มกราคม) ถึง 12 (ธันวาคม) จากค่า Serial Number ของวันที่ที่ระบุ เป็นฟังก์ชันพื้นฐานที่ใช้บ่อยในการทำรายงานสรุปยอดขายรายเดือน หรือการคำนวณไตรมาส

fx
=MONTH(serial_number)

ความนิยม8/10
ความยาก2/10
ประโยชน์8/10

อัปเดต 19 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
serial_number Date/Number วันที่ที่ต้องการดึงเลขเดือนออกมา (อาจเป็น Cell Reference, Date Serial Number, หรือผลลัพธ์จากสูตรอื่น)

Additional Notes

ฟังก์ชัน MONTH ใช้สำหรับดึงค่าเลขเดือน (1 ถึง 12) ออกมาจากข้อมูลวันที่ เหมาะมากสำหรับการวิเคราะห์แนวโน้มรายเดือนหรือจัดกลุ่มข้อมูลตามฤดูกาล

ที่เจ๋งคือมันทำงานร่วมกับ YEAR และ DAY ได้เยอะมากครับ ใช้แยกองค์ประกอบวันที่ออกมาคำนวณต่อได้สะดวก

ส่วนตัวผมใช้บ่อยมากเวลาทำรายงานยอดขายรายเดือนหรือคำนวณไตรมาสครับ 😎

How it works

วิเคราะห์ยอดขายตามฤดูกาล (Seasonality)

ดึงเลขเดือนจากวันที่สั่งซื้อ เพื่อสร้าง PivotTable ดูยอดขายรวมของแต่ละเดือนเปรียบเทียบกัน

ปีบัญชี (Fiscal Year)

ใช้ MONTH ร่วมกับ IF หรือ CHOOSE เพื่อแปลงเดือนปฏิทินให้เป็นเดือนทางบัญชี (เช่น ถ้าปีบัญชีเริ่ม ต.ค. เดือน 10 ก็จะเป็นเดือนที่ 1)

Examples

ดึงเลขเดือนจากวันที่MONTH("2025-12-25")

ดึงเลข 12 (ธันวาคม) ออกมาจากวันที่ 25 ธันวาคม 2025 ส่วนตัวผมใช้แบบนี้บ่อยมากเวลาต้องแยกกลุ่มข้อมูลตามเดือนครับ 😊

fx
=MONTH("2025-12-25")

ผลลัพธ์12
คำนวณไตรมาส (Quarter)CEILING(MONTH(A1)/3, 1)

นำเลขเดือนมาหาร 3 แล้วปัดเศษขึ้น (CEILING) จะได้เลขไตรมาส

เช่น เดือน 1-3 ได้ 1, เดือน 4-6 ได้ 2 เอาจริงๆ วิธีนี้ใช้งานได้สะดวกมากเลยครับ

fx
=CEILING(MONTH(A1)/3, 1)

ผลลัพธ์1-4
ตรวจสอบว่าเป็นเดือนเกิดหรือไม่IF(MONTH(A2)=MONTH(TODAY()), "HBD!", "")

เปรียบเทียบเดือนเกิดกับเดือนปัจจุบัน ถ้าตรงกันให้แสดงข้อความ HBD! ที่เจ๋งคือใช้ MONTH ร่วมกับ TODAY ได้ลื่นไหลมากครับ 💡

fx
=IF(MONTH(A2)=MONTH(TODAY()), "HBD!", "")

ผลลัพธ์"HBD!" หรือ ""
สร้างวันที่โดยใช้ MONTH ในการระบุเดือนDATE(YEAR(TODAY()), MONTH(A1), 1)

ดึงเดือนจาก A1 แล้วสร้างวันแรกของเดือนนั้นในปีปัจจุบัน ใช้ได้เยอะกับการคำนวณเงื่อนไขเดือนครับ

fx
=DATE(YEAR(TODAY()), MONTH(A1), 1)

ผลลัพธ์1/[month]/[current_year]

FAQs

ทำไมได้ผลลัพธ์เป็นวันที่ 1/1/1900?+

เพราะเซลล์นั้นถูกตั้ง Format เป็น Date อยู่ครับ

ให้เปลี่ยน Format เป็น General หรือ Number แล้วจะเห็นเป็นเลข 1-12 ตามปกติครับ 😅

ถ้าต้องการชื่อเดือน (เช่น "มกราคม") ต้องทำอย่างไร?+

ใช้ฟังก์ชัน TEXT ครับ เช่น =TEXT(A1, "mmmm") จะได้ชื่อเดือนเต็ม หรือ "mmm" ได้ชื่อย่อ

ส่วนตัวผมใช้ TEXT ร่วมกับ MONTH บ่อยมากเวลาต้องแสดงผลให้อ่านง่ายครับ

MONTH ใช้ได้กับข้อความวันที่หรือไม่?+

ต้องแปลงเป็น Date Serial Number ก่อนครับ

ถ้าข้อความเป็นรูปแบบวันที่ให้ใช้ DATEVALUE ช่วย เช่น =MONTH(DATEVALUE("25/12/2025"))

ความต่างระหว่าง MONTH กับ YEAR และ DAY?+

MONTH ดึงเดือน (1-12), YEAR ดึงปี, DAY ดึงวัน (1-31) สามารถใช้ร่วมกันเพื่อแยกองค์ประกอบของวันที่

เอาจริงๆ สามฟังก์ชันนี้เป็นเซ็ตคู่กันเลยครับ ใช้งานร่วมกันได้เยอะมาก 💡

สามารถคำนวณเดือนที่ผ่านไปตั้งแต่ปีใดปีหนึ่งได้ไหม?+

ได้ครับ ใช้สูตร =(YEAR(TODAY())-YEAR(StartDate))*12 + (MONTH(TODAY())-MONTH(StartDate)) เพื่อหาจำนวนเดือนที่ผ่านไป

ที่ต้องระวังคือสูตรนี้นับเดือนไม่เต็มด้วยนะครับ ถ้าต้องการนับแบบเต็มเดือนให้ใช้ DATEDIF แทน

MONTH สามารถนำไปหา Quarter (ไตรมาส) ได้ไหม?+

ได้ครับ ใช้สูตร =ROUNDUP(MONTH(A1)/3, 0) หรือ =CEILING(MONTH(A1)/3, 1) เพื่อหาว่าเป็นไตรมาสที่เท่าไหร่ (1-4)

ส่วนตัวผมชอบใช้ CEILING มากกว่าครับ เพราะอ่านง่ายกว่า 😎

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ MONTH จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้MONTHDate and Time
Date and Time (8)
DATE

DATE สร้างวันที่จากตัวเลขปี เดือน วัน แยกกัน รองรับการบวก/ลบเดือนที่เกิน 12 หรือค่าลบ และปรับวันที่ให้อัตโนมัติ เหมาะสำหรับสร้างวันที่จากสูตรหรือใช้ในเงื่อนไข SUMIFS COUNTIFS AVERAGEIFS

DATEDIF

DATEDIF เป็นฟังก์ชัน 'ลับ' (Hidden Function) ที่ใช้คำนวณระยะเวลาระหว่างวันที่สองวัน โดยสามารถเลือกหน่วยได้: ปี, เดือน, วัน, หรือการรวมกัน เหมาะใช้คำนวณอายุ, อายุงาน, หรือระยะเวลาโครงการอย่างแม่นยำ

DATEVALUE

DATEVALUE แปลงวันที่ที่อยู่ในรูปข้อความให้เป็น serial number ซึ่ง Excel ใช้เก็บวันที่ รองรับรูปแบบวันที่หลากหลาย เหมาะสำหรับแปลงวันที่ที่ Import มาจากระบบอื่น

DAY

DAY คืนค่าวันที่เป็นตัวเลขจำนวนเต็มระหว่าง 1 ถึง 31 จากค่า Serial Number ของวันที่ที่ระบุ ทำให้เราสามารถดึงเฉพาะ "เลขวัน" ออกมาใช้งานได้ โดยไม่ต้องสนใจเดือนหรือปี

EDATE

EDATE รับวันที่เริ่มต้นและจำนวนเดือนที่ต้องการเลื่อนไปข้างหน้า/ย้อนกลับ แล้วคืนวันที่ใหม่ที่รักษาวันเดิม (หรือวันสุดท้ายของเดือนถัดไปถ้าวันเดิมเกิน) เหมาะสำหรับวันครบกำหนดชำระ บันทึกงวด และตารางผ่อน

EOMONTH

EOMONTH คืนค่าวันที่วันสุดท้ายของเดือน โดยนับจากวันที่เริ่มต้นไปข้างหน้าหรือย้อนหลังตามจำนวนเดือนที่ระบุ เหมาะสำหรับกำหนดวันครบกำหนดสิ้นเดือน

TODAY

TODAY คืนค่า Serial Number ของวันที่ปัจจุบันตามเวลาของเครื่องคอมพิวเตอร์ โดยเวลาจะเป็น 0:00:00 เสมอ
.
ที่เจ๋งคือฟังก์ชันนี้เป็นประเภท Volatile ที่จะคำนวณใหม่ทุกครั้งที่มีการเปลี่ยนแปลงใดๆ ในชีท ที่ต้องระวังคือไม่เหมาะกับการบันทึกวันที่ทำรายการ (Transaction Date) ที่ต้องการให้คงที่ครับ เพราะมันจะเปลี่ยนทุกครั้งที่เปิดไฟล์

YEAR

YEAR ดึงเลขปี ค.ศ. (4 หลัก เช่น 2025) จากวันที่ที่ระบุ เหมาะใช้จัดกลุ่มข้อมูลรายปี คำนวณอายุ หรือวิเคราะห์ข้อมูลตามช่วงเวลา

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่