ข้ามไปเนื้อหาหลัก
Wise Success (Thailand)
เทคนิค Excel

สูตรวันที่ใน Excel: รวมสูตร วัน เดือน ปี ที่ใช้บ่อย พร้อมตัวอย่าง

· อ่านประมาณ 14 นาที

วันที่เป็นข้อมูลที่อยู่ในไฟล์ Excel แทบทุกไฟล์ ทั้งวันที่ออกใบแจ้งหนี้ วันครบกำหนด วันเริ่มงาน และวันลา แต่หลายคนยังเจอปัญหาเดิม ๆ เช่น อยากแยกวัน เดือน ปี ออกจากกัน อยากแสดงเป็นวันที่ภาษาไทยแบบ พ.ศ. อยากหาวันสิ้นเดือน หรือวันที่ที่พิมพ์มาแล้วคำนวณไม่ได้

บทความนี้รวมสูตรวันที่ใน Excelที่ใช้บ่อยที่สุด ตั้งแต่สูตร วัน เดือน ปี พื้นฐาน การสร้างวันที่ การแสดงผลภาษาไทย การบวกลบเดือน หาวันสิ้นเดือน นับวันทำงาน ไปจนถึงการแปลงข้อความเป็นวันที่ พร้อมภาพหน้าจอตัวอย่างทุกหัวข้อ

เข้าใจก่อน: Excel เก็บวันที่เป็นตัวเลข

Excel (บน Windows) เก็บวันที่เป็นลำดับตัวเลข โดยนับวันที่ 1 มกราคม ค.ศ. 1900 (พ.ศ. 2443) เป็นลำดับที่ 1 เช่น วันที่ 13 พฤศจิกายน 2026 คือลำดับที่ 46339 สิ่งที่เราเห็นเป็น "13/11/2026" เป็นแค่รูปแบบการแสดงผลเท่านั้น

เพราะวันที่คือตัวเลข เราจึงบวกลบวันที่ได้โดยตรง เช่น =B2-A2 ได้จำนวนวันระหว่างสองวันที่ หรือ =A2+30 ได้วันที่อีก 30 วันข้างหน้า

วิธีดูลำดับตัวเลขของวันที่: เลือกเซลล์แล้วกด Ctrl + Shift + ~ หรือเปลี่ยน Format Cells เป็น General ถ้าเห็นเป็นตัวเลขแปลว่า Excel รู้จักเป็นวันที่จริง แต่ถ้ายังเป็นข้อความเหมือนเดิม แปลว่าเป็น "ข้อความที่หน้าตาเหมือนวันที่" ซึ่งคำนวณไม่ได้ (ดูวิธีแก้ในหัวข้อท้ายบทความ)

สูตร DATE: สร้างวันที่จาก ปี เดือน วัน

=DATE(year, month, day)

ใช้รวมตัวเลข ปี เดือน วัน ที่อยู่คนละเซลล์ให้เป็นวันที่ เช่น =DATE(2026, 11, 13) ได้ 13/11/2026 จุดเด่นของ DATE คือคำนวณเดือนและวันที่เกินหรือติดลบให้อัตโนมัติ

ตัวอย่างสูตร DATE ใน Excel พร้อมผลลัพธ์แบบวันที่และแบบลำดับตัวเลข
คอลัมน์ A คือสูตรที่เขียน คอลัมน์ B คือผลลัพธ์แบบวันที่ และคอลัมน์ C คือผลลัพธ์เดียวกันเมื่อจัดรูปแบบเป็น General
  • =DATE(2026, 14, 1) เดือนที่ 14 = เดือนที่ 2 ของปีถัดไป ได้ 1/2/2027
  • =DATE(2026, 3, 0) วันที่ 0 = วันสุดท้ายของเดือนก่อนหน้า ได้ 28/2/2026
  • =DATE(2026, 11, -1) ถอยหลังจากวันสุดท้ายของเดือนก่อนอีก 1 วัน ได้ 30/10/2026
  • =DATE(2026, -1, 1) เดือนติดลบ ถอยไปปีก่อน ได้ 1/11/2025

ข้อควรระวัง: ใส่ปีเป็น ค.ศ. 4 หลักเสมอ ถ้าใส่ปี พ.ศ. เช่น =DATE(2569, 11, 13) Excel จะเข้าใจว่าเป็นปี ค.ศ. 2569 และถ้าใส่ปี 0–1899 Excel จะบวก 1900 ให้ เช่น =DATE(105, 5, 1) ได้ 1/5/2005

สูตร YEAR, MONTH, DAY: แยก ปี เดือน วัน ออกจากวันที่

ถ้า A2 เป็นวันที่ 13/11/2026

ต้องการสูตรผลลัพธ์
ปี ค.ศ.=YEAR(A2)2026
ปี พ.ศ.=YEAR(A2)+5432569
เดือน (ตัวเลข)=MONTH(A2)11
วันที่=DAY(A2)13
วันในสัปดาห์ (จันทร์ = 1)=WEEKDAY(A2, 2)5 (วันศุกร์)

สูตรกลุ่มนี้ใช้มากเวลาสรุปข้อมูลรายเดือนหรือรายปี เช่น เพิ่มคอลัมน์ "เดือน" ด้วย =MONTH(A2) แล้วนำไปทำ Pivot Table หรือ SUMIFS

สูตร TEXT: แสดงวันที่ภาษาไทยแบบ พ.ศ.

สูตร TEXT แปลงวันที่เป็นข้อความตามรูปแบบที่กำหนด เหมาะกับการนำวันที่ไปต่อในประโยค เช่น ในจดหมายหรือใบแจ้งหนี้

สูตร YEAR MONTH DAY และ TEXT แสดงวันที่ภาษาไทยปี พ.ศ. ใน Excel
แยก ปี เดือน วัน และแสดงวันที่เป็นภาษาไทยแบบ พ.ศ. จากวันที่เดียวกัน
สูตรผลลัพธ์
=TEXT(A2, "dd/mm/yyyy")13/11/2026
=TEXT(A2, "[$-41E]d mmmm bbbb")13 พฤศจิกายน 2569
=TEXT(A2, "[$-41E]d mmm bb")13 พ.ย. 69
="ครบกำหนดชำระวันที่ " & TEXT(A2, "[$-41E]d mmmm bbbb")ครบกำหนดชำระวันที่ 13 พฤศจิกายน 2569

[$-41E] คือรหัสภาษาไทย ทำให้ชื่อเดือนเป็นภาษาไทย และ bbbb คือปีพุทธศักราช ถ้าต้องการแค่แสดงเซลล์วันที่เป็น พ.ศ. โดยยังคำนวณได้ ไม่ต้องใช้สูตร ให้ไปที่ Format Cells > Custom แล้วใส่ [$-41E]d mmmm bbbb แทน

ชื่อวันภาษาไทย: ใช้ CHOOSE ร่วมกับ WEEKDAY จะได้ผลเหมือนกันทุกเครื่อง

=CHOOSE(WEEKDAY(A2), "อาทิตย์", "จันทร์", "อังคาร", "พุธ", "พฤหัสบดี", "ศุกร์", "เสาร์")

สูตร TODAY และ NOW: วันที่และเวลาปัจจุบัน

  • =TODAY() วันที่วันนี้ อัปเดตเองทุกครั้งที่เปิดไฟล์
  • =NOW() วันที่และเวลาปัจจุบัน
  • =TODAY()-A2 จำนวนวันที่ผ่านไปแล้วนับจาก A2 เช่น จำนวนวันค้างชำระ

ถ้าต้องการบันทึกวันที่วันนี้แบบไม่เปลี่ยนอีก ให้กด Ctrl + ; (และ Ctrl + Shift + ; สำหรับเวลา) แทนการใช้สูตร

สูตร EDATE, EOMONTH, WORKDAY: บวกเดือน หาวันสิ้นเดือน และนับวันทำงาน

สูตร EDATE EOMONTH WORKDAY และ NETWORKDAYS ใน Excel พร้อมผลลัพธ์
ตัวอย่างสูตรบวกเดือน หาวันต้นเดือนและสิ้นเดือน และนับวันทำงาน จากวันที่ 13/11/2026
ต้องการสูตรผลลัพธ์ (A2 = 13/11/2026)
บวก 3 เดือน (เช่น วันหมดสัญญา)=EDATE(A2, 3)13/02/2027
วันสิ้นเดือนนี้=EOMONTH(A2, 0)30/11/2026
วันแรกของเดือนนี้=EOMONTH(A2, -1)+101/11/2026
วันสิ้นเดือนถัดไป (เช่น เครดิตเทอม)=EOMONTH(A2, 1)31/12/2026
อีก 10 วันทำงาน (ไม่นับเสาร์-อาทิตย์)=WORKDAY(A2, 10)27/11/2026
จำนวนวันทำงานในเดือนนี้=NETWORKDAYS(EOMONTH(A2,-1)+1, EOMONTH(A2,0))21

WORKDAY และ NETWORKDAYS ใส่รายการวันหยุดนักขัตฤกษ์เป็นอาร์กิวเมนต์สุดท้ายได้ เช่น =WORKDAY(A2, 10, วันหยุด!$A$2:$A$20) ถ้าบริษัททำงานวันเสาร์ ใช้ WORKDAY.INTL และ NETWORKDAYS.INTL ซึ่งกำหนดวันหยุดประจำสัปดาห์เองได้

ผลลัพธ์ของ EDATE และ EOMONTH เป็นตัวเลขลำดับวันที่ ถ้าเห็นเป็นตัวเลข 5 หลัก ให้จัดรูปแบบเซลล์เป็น Date

คำนวณระยะห่างระหว่างวันที่

  • จำนวนวัน: =B2-A2
  • จำนวนปีเต็ม เดือนเต็ม: =DATEDIF(A2, B2, "y") และ =DATEDIF(A2, B2, "m")
  • อายุงานแบบ "x ปี y เดือน": ดูสูตรเต็มในบทความคำนวณอายุงานด้วย DATEDIF

แปลงข้อความเป็นวันที่ (วันที่ที่คำนวณไม่ได้)

ข้อมูลที่ Export มาจากระบบอื่นมักได้วันที่เป็นข้อความ สังเกตได้จากข้อความชิดซ้ายของเซลล์ สูตรอย่าง YEAR หรือการลบวันที่จะได้ #VALUE! ใช้ LEFT, MID, RIGHT แยกส่วนแล้วประกอบใหม่ด้วย DATE

แปลงข้อความวันที่ปี พ.ศ. และรูปแบบ yyyymmdd เป็นวันที่จริงด้วยสูตร DATE LEFT MID RIGHT
ข้อความวันที่ในคอลัมน์ A ชิดซ้าย ส่วนผลลัพธ์ในคอลัมน์ B เป็นวันที่จริงที่คำนวณต่อได้
ข้อความใน A2สูตร
13/11/2569 (dd/mm/yyyy ปี พ.ศ.)=DATE(RIGHT(A2,4)-543, MID(A2,4,2), LEFT(A2,2))
20261113 (yyyymmdd)=DATE(LEFT(A2,4), MID(A2,5,2), RIGHT(A2,2))
2026-11-13 (yyyy-mm-dd)=DATE(LEFT(A2,4), MID(A2,6,2), RIGHT(A2,2))

สูตรเหล่านี้ใช้ได้เมื่อข้อความมีความยาวคงที่ เช่น วันที่หลักเดียวเขียนเป็น 05 ถ้าต้องแปลงข้อมูลจำนวนมาก หรือมีหลายรูปแบบปนกัน ใช้ Data > Text to Columns (เลือก Date: DMY) หรือ Power Query จะเร็วกว่า

ตารางสรุปสูตรวันที่ใน Excel

สูตรใช้ทำอะไร
DATEสร้างวันที่จาก ปี เดือน วัน
YEAR, MONTH, DAYแยก ปี เดือน วัน ออกจากวันที่
TEXTแสดงวันที่เป็นข้อความ รวมถึงภาษาไทยแบบ พ.ศ.
TODAY, NOWวันที่ และวันที่-เวลาปัจจุบัน
WEEKDAYวันในสัปดาห์ (ตัวเลข)
EDATEบวกหรือลบจำนวนเดือน
EOMONTHวันสิ้นเดือน
WORKDAY, NETWORKDAYSหาวันทำงานถัดไป และนับวันทำงาน
DATEDIFระยะห่างเป็นปี เดือน วัน

คำถามที่พบบ่อย

ทำไมพิมพ์วันที่แล้ววันกับเดือนสลับกัน

Excel อ่านวันที่ตามการตั้งค่า Region ของ Windows ถ้าเครื่องตั้งเป็นแบบสหรัฐ (เดือน/วัน/ปี) การพิมพ์ 05/11/2026 จะได้ 11 พฤษภาคม ควรตั้ง Region เป็นแบบไทยหรืออังกฤษ (วัน/เดือน/ปี) หรือพิมพ์แบบ 2026-11-05 ซึ่ง Excel อ่านถูกทุกเครื่อง

ทำไมเซลล์วันที่ขึ้นเป็น #####

คอลัมน์แคบเกินไป ให้ขยายคอลัมน์ หรือผลลัพธ์เป็นวันที่ติดลบ เช่น เอาวันที่น้อยลบวันที่มาก แล้วจัดรูปแบบเป็น Date

พิมพ์ปี พ.ศ. ลงในเซลล์ได้ไหม

ไม่แนะนำ ควรพิมพ์เป็น ค.ศ. แล้วใช้รูปแบบเซลล์ [$-41E]d/m/bbbb ให้แสดงเป็น พ.ศ. เพราะสูตรวันที่ทุกตัวคำนวณตามปี ค.ศ.

สรุป

จำหลักเดียวว่า "วันที่ใน Excel คือตัวเลข" แล้วสูตร วัน เดือน ปี ทั้งหมดจะเข้าใจง่ายขึ้น ใช้ DATE สร้างวันที่ ใช้ YEAR, MONTH, DAY แยกส่วน ใช้ TEXT แสดงผลภาษาไทย ใช้ EDATE และ EOMONTH จัดการเดือน และใช้ WORKDAY กับ NETWORKDAYS นับวันทำงาน

ถ้าคุณใช้วันที่คำนวณค่าแรงหรือการทำงานล่วงเวลา อ่านต่อที่สูตรหา OT ใน Excel ฟังก์ชันวันที่และเวลาเป็นหัวข้อหนึ่งในหลักสูตรอบรม Excel Advance ส่วนทีม HR ที่ใช้สูตรวันที่ทุกวัน ดูหลักสูตรอบรม Excel HR และสำหรับองค์กรที่ต้องการให้วิทยากรสอน Excel ให้ทีม ดูรายละเอียดอบรม In-house / Online

บทความที่เกี่ยวข้อง

เทคนิค Excel ·

สูตรหา OT ใน Excel: คำนวณชั่วโมงและค่าล่วงเวลาทีละขั้น

สอนสูตรหา OT ใน Excel ตั้งแต่คำนวณชั่วโมงทำงานจากเวลาเข้า-ออก หาชั่วโมงล่วงเวลา ปัดเศษ แยกวันทำงานกับวันหยุด คำนวณค่าการทำงานล่วงเวลาตามอัตรา และสรุปยอดรายเดือนของพนักงานแต่ละคน

อ่านต่อ →

เทคนิค Excel ·

สูตร VLOOKUP สำหรับงานขาย: 7 ตัวอย่างตั้งแต่ใบเสนอราคาถึงค่าคอมมิชชัน

รวม 7 ตัวอย่างการใช้สูตร VLOOKUP ในงานขายสินค้า ตั้งแต่ทำใบเสนอราคา เลือกราคาปลีกหรือราคาส่ง คิดส่วนลดตามยอดซื้อ คำนวณค่าคอมมิชชัน ตรวจสต็อก ไปจนถึงสรุปยอดตามทีมขาย

อ่านต่อ →

เทคนิค Excel ·

การสร้างสูตร Vlookup ข้ามชีทใน Excel

สอนสร้างสูตร VLOOKUP ข้ามชีทใน Excel ทีละขั้น ตั้งแต่วิธีคลิกเลือกชีท การพิมพ์ชื่อชีทที่มีเว้นวรรค การล็อกช่วงด้วย $ VLOOKUP ข้ามไฟล์ ค้นหาจากหลายชีท และวิธีแก้ error ที่พบบ่อย

อ่านต่อ →

ต้องการจัดอบรมให้ทีมในองค์กร?

ปรับเนื้อหาให้ตรงกับงานจริงของทีมคุณ สอนที่บริษัทหรือ Online ได้ ส่งรายละเอียดมา เราตอบกลับพร้อมใบเสนอราคา

☎ โทรเลย LINE @wisesuccess

เลือกประเภทคุกกี้ที่คุณอนุญาต ปรับเปลี่ยนได้ทุกเมื่อที่ลิงก์ "ตั้งค่าคุกกี้" ท้ายเว็บไซต์