Courses
คุณอาจจะแปลกใจที่รู้ว่า Excel เก็บค่าเวลาเป็นเศษส่วนของหนึ่งวัน หมายความว่าไม่ได้เก็บ 8:30 AM ตามที่เห็น แต่เก็บเป็น 0.35417 ซึ่งเท่ากับ 8.5/24 จะคิดว่าเป็น 35.4% ของหนึ่งวันเต็มก็ได้
ในบทความนี้ จะครอบคลุมสถานการณ์สำคัญเหล่านี้และอื่น ๆ:
- ส่วนต่างเวลา: ครอบคลุมการคำนวณช่วงห่างระหว่างเวลาเริ่มและเวลาสิ้นสุดภายในวันเดียวกัน
- เวลาที่ผ่านไป: วัดช่วงเวลาที่ครอบคลุมหลายวันโดยใช้ค่าเวลาแบบเต็ม (timestamp)
- เวลา ระหว่างวันที่: ครอบคลุมการคำนวณช่วงห่างระหว่างสองวันที่ในปฏิทิน ทั้งในหน่วยวัน ชั่วโมง หรือ นาที
- เวลา รวมทั้งหมด: ครอบคลุมการบวกเวลาหลายรายการโดยไม่ติดปัญหารีเซ็ตทุก 24 ชั่วโมง
- เวลาเฉลี่ย: ครอบคลุมการคำนวณค่าเฉลี่ยของรายการเวลา หลายรายการ
วิธีคำนวณส่วนต่างเวลาใน Excel
ในบางครั้งย่อมต้องคำนวณช่วงห่างระหว่างเวลาเริ่มและเวลาสิ้นสุด (เวลาสิ้นสุด - เวลาเริ่ม) ไม่ว่าจะใช้รูปแบบ 12 ชั่วโมงหรือ 24 ชั่วโมง Excel มองทั้งสองแบบเป็นทศนิยมเหมือนกัน
การคำนวณแล้วได้ทศนิยมไม่ใช่ปัญหา ปัญหาอยู่ที่การทำให้ผลลัพธ์อ่านง่าย นั่นคือบทบาทของการจัดรูปแบบ
ลองดูตัวอย่างนี้:

ที่นี่ เซลล์ C2 จะแสดง 0.354167 (8.5/24) ตามค่าเริ่มต้น ตัวเลขนี้ถูกต้อง แทน 8 ชั่วโมง 30 นาทีเป็นเศษส่วนของหนึ่งวัน เพื่อให้อ่านง่าย ให้ใช้รูปแบบกำหนดเอง [h]:mm
ขั้นตอนการใช้รูปแบบที่ถูกต้องมีดังนี้:
-
เลือกเซลล์ C2
-
กด
Ctrl + 1เพื่อเปิดกล่องโต้ตอบ Format Cells -
คลิก Custom
-
ในช่อง Type ป้อน
[h]:mmหรือเลื่อนลงไปที่ตัวเลือกแล้วคลิก[h]:mm:ssแล้วคลิก OK

ตอนนี้เซลล์ C2 แสดงเป็น 8:30:00
หากสังเกต จะใช้ [h]:mm แทน h:mm เหตุผลคือ หากไม่มีวงเล็บ Excel จะวนค่าชั่วโมงกลับเป็นศูนย์เมื่อครบ 24 ชั่วโมง ระยะเวลา 26 ชั่วโมงจะแสดงเป็น 2:00 แทน 26:00 วงเล็บบอก Excel ให้แสดงจำนวนชั่วโมงรวม ไม่ใช่ตำแหน่งเข็มชั่วโมงของนาฬิกา
Excel รองรับทั้งรูปแบบ 12 ชั่วโมง (AM/PM) และ 24 ชั่วโมง เซลล์ที่แสดง 9:00 AM เท่ากับ 09:00 และเซลล์ที่แสดง 9:00 PM เท่ากับ 21:00 สิ่งสำคัญที่สุดคือใช้รูปแบบที่ถูกต้องในเซลล์เพื่อให้การคำนวณทำงานได้ตามคาด
วิธีคำนวณเวลาที่ผ่านไปใน Excel
เวลาที่ผ่านไปและส่วนต่างเวลาเป็นแนวคิดที่คล้ายกันแต่แตกต่างกัน
ส่วนต่างเวลา ตามที่กล่าวไปแล้ว คำนวณช่วงห่างระหว่างสองช่วงเวลาในวันเดียวกัน ส่วนเวลาที่ผ่านไปครอบคลุมข้ามหลายวัน และต้องใช้ค่าวันที่และเวลาแบบเต็ม (timestamp) เพื่อคำนวณอย่างแม่นยำ
สูตรคือ:
= enddate_timestamp - startdate_timestamp
ทั้งสองเซลล์ต้องมีวันและเวลาแบบเต็ม ตัวอย่างเช่น 3/1/2026 14:00 และ 3/3/2026 9:30

เมื่อจัดรูปแบบเซลล์ C2 เป็น [h]:mm ผลลัพธ์จะเป็น 43:30 ซึ่งหมายถึงเวลาที่ผ่านไป 43 ชั่วโมง 30 นาที

ระหว่างที่ทำการคำนวณ อาจพบข้อผิดพลาด เช่น เซลล์แสดงเป็น ######## หรือค่าเป็นลบ ซึ่งจะอธิบายในภายหลังว่าจะแก้ไขอย่างไร
วิธีคำนวณเวลาระหว่างวันที่ใน Excel
เมื่อพูดถึงแนวคิดการคำนวณส่วนต่างของวันที่ จะต่างจากชั่วโมงและนาทีเล็กน้อย Excel เก็บวันที่เป็นเลขลำดับ (1 มกราคม 1900 คือ 1, 2 มกราคม 1900 คือ 2) จึงสามารถลบวันที่เพื่อหาช่วงห่างได้ง่าย
ในการคำนวณจำนวนวันระหว่างวันที่ ให้ลบวันเริ่มออกจากวันสิ้นสุด (= end_date - start_date)
หมายความว่าอย่างนี้:

ผลลัพธ์จะเป็น 9 วัน แต่ต้องแน่ใจว่าเซลล์ถูกจัดรูปแบบเป็นตัวเลข มิฉะนั้น Excel จะแสดงตัวเลขเป็นวันที่แทนจำนวนวัน
เมื่อได้จำนวนวันแล้ว สามารถแปลงเพื่อคำนวณจำนวนชั่วโมงและนาทีได้โดยการคูณ:
-
ชั่วโมงระหว่างวันที่
= (End_Date - Start_Date) * 24 -
นาทีระหว่างวันที่
= (End_Date - Start_Date) * 24 * 60
ดูตัวอย่างนี้:

ชั่วโมงระหว่างวันที่ (จำนวนชั่วโมงระหว่างสองวันที่) = 216 ชั่วโมง
นาทีระหว่างวันที่ (จำนวนนาทีระหว่างสองวันที่) = 12,960
ใน Excel มีฟังก์ชันสำหรับคำนวณส่วนต่างตามหน่วยเฉพาะ (วัน เดือน ปี) คือฟังก์ชัน DATEDIF() หลักการคำนวณมีดังนี้:
= DATEDIF(Start_Date, End_Date, "d") → Total difference in days
= DATEDIF(Start_Date, End_Date, "m") → Total difference in months
= DATEDIF(Start_Date, End_Date, "y") → Total difference in years
หากต้องการเข้าใจแนวคิดพื้นฐานใน Excel ขอแนะนำให้ดูแทร็ก Excel Fundamentals ของเรา
วิธีคำนวณเวลารวมใน Excel
การบวกเวลาหลายรายการใน Excel ทำได้เหมือนกับการบวกข้อมูลประเภทอื่น ๆ
= SUM(C2:C15)
อย่างไรก็ตาม ปัญหาจะเกิดเมื่อผลรวมของเวลาเกิน 24 ชั่วโมง ซึ่งจะวนกลับเป็น 0 วิธีแก้ก็เหมือนที่กล่าวมาตั้งแต่ต้นบทความ: จัดรูปแบบเซลล์ผลรวมเป็น [h]:mm

หากไม่จัดรูปแบบเซลล์ผลรวม (B7) ผลลัพธ์จะเป็น 16:30 แต่เมื่อจัดรูปแบบแล้วจะเป็น 40:30

เพื่อจัดการผลรวมเวลาจำนวนมากได้อย่างมีประสิทธิภาพ รูปแบบ [h]:mm รองรับผลรวมทุกขนาดโดยไม่มีขีดจำกัด และเพื่อการรายงาน อาจต้องการแปลงผลรวมเป็นชั่วโมงทศนิยมแทน:
= SUM(B2:B6) * 24
สูตรนี้จะได้ 40.0 แทน 40:00 ซึ่งเป็นตัวเลขล้วนที่ใช้ต่อในการคูณ การหาร หรือการทำภาพข้อมูลได้สะดวก
วิธีคำนวณเวลาเฉลี่ยใน Excel
Excel คำนวณเวลาเฉลี่ยเหมือนกับตัวเลขอื่น ๆ โดยใช้ฟังก์ชัน AVERAGE() อย่างไรก็ตาม ปัญหามักมาจากการจัดรูปแบบที่ทำให้มองไม่เห็นผลลัพธ์ที่ถูกต้อง
หลักการคือ:
= AVERAGE(B2:B8)
หากเซลล์ผลลัพธ์ถูกจัดเป็น "General" จะเห็นค่าแบบ 0.354 ให้ใช้การจัดรูปแบบ h:mm แล้วจะแสดงเป็น 8:30 ใช้ h:mm (ไม่มีวงเล็บ) สำหรับค่าเฉลี่ย เพราะโดยมากจะไม่เกิน 24 ชั่วโมง

เซลล์ B6 อาจแสดงเป็น 0.057292 ในตอนแรก แต่เมื่อจัดรูปแบบเป็น h:mm ผลลัพธ์จะเป็น 1:22:30 (1 ชั่วโมง 22 นาที 30 วินาที)

ดังที่ครอบคลุมในส่วนเวลาที่ผ่านไป รูปแบบ [h]:mm ใช้ได้กับสถานการณ์นี้เช่นกัน
อาจมีกรณีที่ชุดข้อมูลมีเซลล์ว่าง Excel จะละเว้นโดยอัตโนมัติเมื่อคำนวณค่าเฉลี่ย ดังนั้นหากมีข้อมูลเจ็ดแถวแต่มีเซลล์ว่างสองเซลล์ Excel จะนับเป็นห้า
อย่างไรก็ตาม หากเซลล์มีค่า 0 Excel จะนับด้วย และอาจมีผลต่อผลลัพธ์ วิธีจัดการคือใช้ฟังก์ชัน AVERAGEIF() หรือใช้เพื่อหาค่าเฉลี่ยแบบมีเงื่อนไข (เช่น ต้องการค่าเฉลี่ยของแถวที่มากกว่า น้อยกว่า หรือเท่ากับค่าหนึ่ง)
= AVERAGEIF(A2:A10, “>0”)
ข้อผิดพลาดทั่วไปเมื่อคำนวณเวลาใน Excel
มีข้อผิดพลาดทั่วไปบางอย่างที่อาจเกิดขึ้นเมื่อคำนวณเวลาใน Excel ต่อไปนี้คือบางส่วนและวิธีแก้ไขเมื่อพบ:
ค่าเวลาเป็นลบหรือ #######
######## หมายถึงคอลัมน์แคบเกินไปที่จะแสดงผลลัพธ์ ขยายความกว้างแล้วจะแก้ได้ ส่วนค่าติดลบมักหมายถึงสลับเซลล์เริ่มและสิ้นสุดกัน หรือขาดวันที่ในกรณีคำนวณข้ามคืน
แก้ไขได้ด้วย:
= IF(B2 < A2, B2 + 1 - A2, B2 - A2)
การทำงานคือ หากเวลาเริ่ม 6:00 PM และเวลาสิ้นสุด 2:00 AM เงื่อนไข B2 < A2 จะตรวจว่าเวลาสิ้นสุดน้อยกว่าเวลาเริ่มหรือไม่ หากจริง ให้บวกหนึ่งวันเต็ม (1) มิฉะนั้นให้ลบตามปกติ
การจัดรูปแบบไม่ถูกต้อง
หากผลรวมดูน้อยกว่าที่คาดหรือดูไม่ถูกต้อง แก้ได้ด้วยการใช้รูปแบบที่ถูกต้อง ([h]:mm) ตามที่กล่าวไว้ก่อนหน้า
ข้อความ vs. ค่าเวลา
หากป้อนเวลาเป็นข้อความ (มักชิดซ้ายในเซลล์ หรือพิมพ์นำหน้าด้วยอัญประกาศเดี่ยว) การคำนวณใด ๆ จะล้มเหลว วิธีแก้คือแปลงข้อความเป็นค่าเวลาจริงด้วย = TIMEVALUE(A2) แล้วจัดรูปแบบเซลล์เป็น h:mm
ความสับสนเรื่องการวนครบ 24 ชั่วโมง
เมื่อทำ SUM() แล้วแสดงตัวเลขเล็ก ๆ มักเป็นปัญหาการจัดรูปแบบมากกว่าสูตร ให้ใช้ [h]:mm กับเซลล์ผลรวมแล้วจะแก้ได้
แนวปฏิบัติที่ดีที่สุดสำหรับการคำนวณเวลาใน Excel
แนวทางปฏิบัติที่แนะนำมีดังนี้:
-
ตรวจสอบรูปแบบเซลล์ก่อนสรุปว่าสูตรผิด ปัญหาผลเวลาเพี้ยนส่วนใหญ่เป็นปัญหาการแสดงผล ไม่ใช่การคำนวณ
-
ใช้
[h]:mmกับเซลล์ที่คำนวณผลรวม ใช้h:mmกับรายการเวลารายบุคคลภายในวันเดียว -
อย่าป้อนค่าเวลาเป็นข้อความ พิมพ์ 8:30 แล้วให้ Excel จับค่าอัตโนมัติ หลีกเลี่ยงอัญประกาศนำหน้าหรือป้ายข้อความปนกับข้อมูลเวลา
-
รวมวันที่ในทุกการคำนวณที่ข้ามเที่ยงคืน ค่าเวลาอย่างเดียวไม่มีแนวคิดเรื่องวันถัดไป
-
แปลงเป็นชั่วโมงทศนิยมก่อนใช้เวลาในสูตรทางการเงินหรืออัตรา คูณค่าด้วย 24 เพื่อให้เป็นตัวเลขล้วน แล้วใช้คูณหรือหารต่อ
-
รักษารูปแบบเวลาให้สอดคล้องกันทั้งแผ่นงาน คอลัมน์ที่ผสม AM/PM กับ 24 ชั่วโมงคือปัญหาที่ต้องตามแก้ในอนาคต
สรุป
การคำนวณเวลาใน Excel ไม่ซับซ้อนเมื่อเข้าใจว่าเวลาเป็นเพียงเศษส่วนของหนึ่งวัน
สถานการณ์ที่ครอบคลุม — ส่วนต่างเวลา เวลาที่ผ่านไป ช่วงหลายวัน ผลรวมรายสัปดาห์ ค่าเฉลี่ย — ล้วนย่อส่วนสู่กระบวนการหลักเดียวกัน: การลบ การบวก และการจัดรูปแบบ การจัดรูปแบบคือขั้นตอนที่คู่มือส่วนใหญ่มองข้าม และเป็นแหล่งกำเนิดความสับสนมากที่สุด
หากต้องการต่อยอดการใช้งาน Excel แทร็ก Excel Fundamentals ของเราเป็นเส้นทางที่มีโครงสร้างดี ครอบคลุมฟังก์ชัน ประเภทข้อมูล และการทำงานกับชุดข้อมูลใน Excel
FAQs
เหตุใด Excel จึงแสดงทศนิยมแทนเวลาเมื่อทำการลบ?
Excel เก็บเวลาเป็นเศษส่วนทศนิยมของหนึ่งวัน และเมื่อใช้การจัดรูปแบบที่ถูกต้อง [h]:mm ก็จะแสดงผลได้อย่างเหมาะสม
ความแตกต่างระหว่าง `[h]:mm` กับ `h:mm` คืออะไร?
[h]:mm แสดงจำนวนชั่วโมงรวมโดยไม่มีขีดจำกัด ขณะที่ h:mm จะวนกลับเป็นศูนย์หลังครบ 24 ชั่วโมง
ความแตกต่างระหว่างส่วนต่างเวลากับเวลาที่ผ่านไปใน Excel คืออะไร?
ส่วนต่างเวลาคือช่วงห่างระหว่างสองเวลาในวันเดียวกัน ส่วนเวลาที่ผ่านไปจะรวมทั้งค่าวันที่และเวลา เช่น การคำนวณระหว่างสอง timestamp ข้ามหลายวัน
จะหาจำนวนชั่วโมงรวมระหว่างสองวันที่ได้อย่างไร?
ใช้ =(End_Date-Start_Date) * 24 ซึ่งจะส่งคืนจำนวนชั่วโมงรวมเป็นตัวเลขทศนิยมล้วน
จะจัดการการคำนวณเวลาที่ข้ามเที่ยงคืนอย่างไร?
ใช้ =IF(B2<A2, B2+1-A2, B2-A2) ค่า +1 คือการบวกหนึ่งวันเต็มเพื่อครอบคลุมช่วงข้ามคืน