สูตร WEEKDAY ใน Excel เพื่อหาวันในสัปดาห์ วันหยุดสุดสัปดาห์ และวันทำงาน

  • แบ่งปันสิ่งนี้
Michael Brown

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

มีฟังก์ชันหลากหลายให้ ทำงานกับวันที่ใน Excel ฟังก์ชันวันในสัปดาห์ (WEEKDAY) มีประโยชน์อย่างยิ่งสำหรับการวางแผนและกำหนดเวลา เช่น เพื่อกำหนดกรอบเวลาของโครงการและนำวันหยุดสุดสัปดาห์ออกจากยอดรวมโดยอัตโนมัติ มาดูตัวอย่างทีละตัวอย่างและดูว่าสิ่งเหล่านี้สามารถช่วยคุณจัดการกับงานที่เกี่ยวข้องกับวันที่ต่างๆ ใน ​​Excel ได้อย่างไร

    วันธรรมดา - ฟังก์ชันของ Excel สำหรับวันที่ สัปดาห์

    ฟังก์ชัน WEEKDAY ของ Excel ใช้เพื่อส่งคืนวันในสัปดาห์จากวันที่ที่กำหนด

    ผลลัพธ์เป็นจำนวนเต็ม ตั้งแต่ 1 (วันอาทิตย์) ถึง 7 (วันเสาร์) ตามค่าเริ่มต้น . ถ้าตรรกะทางธุรกิจของคุณต้องการการแจงนับที่แตกต่างกัน คุณสามารถกำหนดค่าสูตรให้เริ่มนับวันอื่นในสัปดาห์

    ฟังก์ชัน WEEKDAY มีอยู่ใน Excel 365 ทุกรุ่นจนถึงปี 2000

    ไวยากรณ์ของฟังก์ชัน WEEKDAY เป็นดังนี้:

    WEEKDAY(serial_number, [return_type])

    Where:

    Serial_number (จำเป็น) - วันที่ที่คุณต้องการแปลง ไปที่หมายเลขวันธรรมดา สามารถระบุเป็นหมายเลขซีเรียลที่แสดงวันที่ เป็นสตริงข้อความในรูปแบบที่ Excel เข้าใจ เป็นการอ้างอิงถึงเซลล์ที่มีวันที่ หรือโดยใช้ฟังก์ชัน DATE

    Return_type (ไม่บังคับ) - กำหนดวันในสัปดาห์ที่จะใช้เป็นวันแรก . หากละเว้น ค่าเริ่มต้นจะเป็นสัปดาห์อาทิตย์-เสาร์

    นี่คือรายการของค่า return_type ที่รองรับทั้งหมด:

    Return_type หมายเลขที่ส่งคืน
    1 หรือไม่ระบุ ตั้งแต่ 1 (วันอาทิตย์) ถึง 7 (วันเสาร์)
    2 ตั้งแต่ 1 (วันจันทร์) ถึง 7 (วันอาทิตย์)
    3 ตั้งแต่ 0 (วันจันทร์) ถึง 6 (วันอาทิตย์)
    11 ตั้งแต่วันที่ 1 (วันจันทร์) ถึง 7 (วันอาทิตย์)
    12 ตั้งแต่ 1 (วันอังคาร) ถึง 7 (วันจันทร์)
    13 ตั้งแต่วันที่ 1 (วันพุธ) ถึง 7 (วันอังคาร)
    14 ตั้งแต่ 1 (วันพฤหัสบดี) ถึง 7 (วันพุธ)
    15 ตั้งแต่ 1 (วันศุกร์) ถึง 7 (วันพฤหัสบดี)
    16 ตั้งแต่ 1 (วันเสาร์) ถึง 7 (วันศุกร์)
    17 ตั้งแต่ 1 (วันอาทิตย์) ถึง 7 (วันเสาร์)

    หมายเหตุ return_type ค่า 11 ถึง 17 ถูกนำมาใช้ใน Excel 2010 ดังนั้นจึงไม่สามารถใช้ในเวอร์ชันก่อนหน้าได้

    สูตรพื้นฐาน WEEKDAY ใน Excel

    สำหรับผู้เริ่มต้น เรามาดูกันว่า เพื่อใช้สูตร WEEKDAY ในรูปแบบที่ง่ายที่สุดในการรับหมายเลขวันจากวันที่

    ตัวอย่างเช่น หากต้องการรับวันธรรมดาจากวันที่ใน C4 ด้วยค่าเริ่มต้นของสัปดาห์วันอาทิตย์ - วันเสาร์ สูตรคือ:

    =WEEKDAY(C4)

    หากคุณมีหมายเลขซีเรียลแทนวันที่ (เช่น นำมาโดยฟังก์ชัน DATEVALUE) คุณสามารถป้อนตัวเลขนั้นได้โดยตรงในสูตร:

    =WEEKDAY(45658)

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

    =WEEKDAY("1/1/2025")

    หรือระบุวันที่ต้นฉบับด้วยวิธีที่เชื่อถือได้ 100% โดยใช้ฟังก์ชัน DATE:

    =WEEKDAY(DATE(2025, 1,1))

    หากต้องการใช้การแมปวันนอกเหนือจากค่าเริ่มต้นของ Sun-Sat ให้ป้อนตัวเลขที่เหมาะสมในอาร์กิวเมนต์ที่สอง ตัวอย่างเช่น หากต้องการเริ่มนับวันจากวันจันทร์ สูตรคือ:

    =WEEKDAY(C4, 2)

    ในภาพด้านล่าง สูตรทั้งหมดจะส่งกลับวันในสัปดาห์ที่ตรงกับวันที่ 1 มกราคม 2025 ซึ่งก็คือ เก็บเป็นหมายเลข 45658 ภายใน Excel ขึ้นอยู่กับค่าที่ตั้งไว้ในอาร์กิวเมนต์ที่สอง สูตรจะแสดงผลลัพธ์ที่แตกต่างกัน

    เมื่อแรกเห็น อาจดูเหมือนว่าตัวเลขที่ส่งคืนโดยฟังก์ชัน WEEKDAY มีความหมายในทางปฏิบัติน้อยมาก แต่ลองดูจากมุมที่แตกต่างกันและหารือเกี่ยวกับสูตรบางอย่างที่ช่วยแก้ปัญหาในชีวิตจริง

    วิธีแปลงวันที่ใน Excel เป็นชื่อวันในสัปดาห์

    โดยการออกแบบ ฟังก์ชัน Excel WEEKDAY ส่งกลับวันในสัปดาห์เป็นตัวเลข หากต้องการเปลี่ยนเลขวันในสัปดาห์ให้เป็นชื่อวัน ให้ใช้ฟังก์ชัน TEXT

    ในการรับ ชื่อเต็มวัน ให้ใช้โค้ดรูปแบบ "dddd":

    TEXT(WEEKDAY( วันที่ ), "dddd")

    เมื่อต้องการส่งกลับ ตัวย่อชื่อวัน รหัสรูปแบบคือ "ddd":

    TEXT(WEEKDAY( date ), "ddd")

    ตัวอย่างเช่น เมื่อต้องการแปลงวันที่ใน A3 เป็นชื่อวันในสัปดาห์ สูตรคือ:

    =TEXT(WEEKDAY(A3), "dddd")

    หรือ

    =TEXT(WEEKDAY(A3), "ddd")

    อีกวิธีที่เป็นไปได้คือการใช้ WEEKDAY ร่วมกับฟังก์ชัน CHOOSE

    ตัวอย่างเช่น ในการรับชื่อวันในสัปดาห์แบบย่อจากวันที่ใน A3 สูตรจะใช้ดังนี้:

    =CHOOSE(WEEKDAY(A3),"Sun","Mon","Tus","Wed","Thu","Fri","Sat")

    ที่นี่ WEEKDAY ส่งคืนหมายเลขซีเรียลตั้งแต่ 1 (อาทิตย์) ถึง 7 (วันเสาร์ ) และ CHOOSE เลือกค่าที่สอดคล้องกันจากรายการ เนื่องจากวันที่ใน A3 (วันพุธ) ตรงกับ 4 ดังนั้น CHOOSE จึงแสดงผลลัพธ์เป็น "วันพุธ" ซึ่งเป็นค่าที่ 4 ในรายการ

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

    เคล็ดลับ อีกวิธีที่ง่ายในการแปลงวันที่เป็นชื่อวันในสัปดาห์คือการใช้รูปแบบวันที่ที่กำหนดเอง ตัวอย่างเช่น รูปแบบรหัส "dddd, mmmm d, yyyy" จะมีวันที่แสดงเป็น " วันศุกร์ที่ 3 มกราคม 2025 " ในขณะที่ "dddd" จะแสดงเพียง " วันศุกร์ " .

    สูตร Excel WEEKDAY เพื่อค้นหาและกรองวันทำงานและวันหยุดสุดสัปดาห์

    เมื่อต้องจัดการกับรายการวันที่จำนวนมาก คุณอาจต้องการทราบว่าวันใดเป็นวันทำงานและวันใดเป็นวันหยุดสุดสัปดาห์

    หากต้องการ ระบุวันหยุดสุดสัปดาห์และวันธรรมดา ใน Excel ให้สร้างคำสั่ง IF ด้วยฟังก์ชัน WEEKDAY ที่ซ้อนกัน ตัวอย่างเช่น:

    =IF(WEEKDAY(A3, 2)<6, "Workday", "Weekend")

    สูตรนี้ไปที่เซลล์ A3 และคัดลอกลงในเซลล์มากเท่าที่จำเป็น

    ในสูตร WEEKDAY คุณตั้งค่า return_type ถึง 2 ซึ่งตรงกับสัปดาห์วันจันทร์-อาทิตย์ โดยที่วันจันทร์เป็นวันที่ 1 ดังนั้น หากจำนวนวันทำงานน้อยกว่า 6 (วันจันทร์ถึงวันศุกร์) สูตรจะส่งกลับ "วันทำงาน" มิฉะนั้น - "วันหยุดสุดสัปดาห์"

    หากต้องการ กรองวันหยุดสุดสัปดาห์หรือวันทำงาน ให้ใช้ตัวกรอง Excel กับชุดข้อมูลของคุณ (แท็บ ข้อมูล > ตัวกรอง ) และเลือก "วันหยุดสุดสัปดาห์" หรือ "วันทำงาน"

    ในภาพหน้าจอด้านล่าง เราได้กรองวันธรรมดาออก ดังนั้นจึงเห็นเฉพาะวันหยุดสุดสัปดาห์เท่านั้น:

    หากสำนักงานส่วนภูมิภาคบางแห่งขององค์กรของคุณทำงานตามกำหนดการอื่นโดยมีวันหยุด ไม่ใช่วันเสาร์และวันอาทิตย์ คุณสามารถปรับสูตร WEEKDAY ให้ตรงกับความต้องการของคุณได้โดยระบุ return_type อื่น

    ตัวอย่างเช่น หากต้องการใช้ วันเสาร์ และ วันจันทร์ เป็นวันหยุดสุดสัปดาห์ ตั้งค่า return_type เป็น 12 ดังนั้นคุณจะได้ประเภทสัปดาห์ "วันอังคาร (1) ถึง วันจันทร์ (7)":

    =IF(WEEKDAY(A2, 12)<6, "Workday", "Weekend")

    วิธีเน้นวันหยุดสุดสัปดาห์และวันทำงานใน Excel

    หากต้องการดูวันหยุดสุดสัปดาห์และวันทำงานในเวิร์กชีตของคุณอย่างรวดเร็ว คุณสามารถทำให้พวกมันถูกแรเงาด้วยสีต่างๆ โดยอัตโนมัติ สำหรับสิ่งนี้ ให้ใช้สูตรวันธรรมดา/วันหยุดสุดสัปดาห์ที่กล่าวถึงในตัวอย่างก่อนหน้ากับการจัดรูปแบบตามเงื่อนไขของ Excel ตามเงื่อนไขที่บอกเป็นนัย เราต้องการเฉพาะฟังก์ชันหลัก WEEKDAY ที่ไม่มี IF wrapper

    หากต้องการ เน้นวันหยุดสุดสัปดาห์ (วันเสาร์และวันอาทิตย์):

    =WEEKDAY($A2, 2)<6

    ถึง เน้นวันทำงาน (วันจันทร์ - ศุกร์):

    =WEEKDAY($A2, 2)>5

    โดยที่ A2 คือเซลล์บนซ้ายของช่วงที่เลือก

    ถึง ตั้งค่ากฎการจัดรูปแบบตามเงื่อนไข โดยมีขั้นตอนดังนี้:

    1. เลือกรายการวันที่ (ในกรณีของเราคือ A2:A15)
    2. ในแท็บ หน้าแรก ในกลุ่ม สไตล์ คลิก การจัดรูปแบบตามเงื่อนไข > กฎใหม่ .
    3. ในกล่องโต้ตอบ กฎการจัดรูปแบบใหม่ กล่อง เลือก ใช้สูตรเพื่อกำหนดว่าเซลล์ใดที่จะจัดรูปแบบ .
    4. ในกล่อง จัดรูปแบบค่าที่สูตรนี้ เป็นจริง ให้ป้อนสูตรที่กล่าวถึงข้างต้นสำหรับวันหยุดสุดสัปดาห์ หรือวันธรรมดา
    5. คลิกปุ่ม รูปแบบ และเลือกรูปแบบที่ต้องการ
    6. คลิก ตกลง สองครั้งเพื่อบันทึกการเปลี่ยนแปลงและปิดหน้าต่างโต้ตอบ

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

    ผลลัพธ์ออกมาดูดีทีเดียวใช่ไหม

    วิธีนับวันธรรมดาและวันหยุดสุดสัปดาห์ใน Excel

    หากต้องการดูจำนวนวันธรรมดาหรือวันหยุดสุดสัปดาห์ในรายการวันที่ คุณสามารถใช้ฟังก์ชัน WEEKDAY ร่วมกับ SUM ตัวอย่างเช่น:

    หากต้องการ นับวันหยุดสุดสัปดาห์ สูตรใน D3 คือ:

    =SUM(--(WEEKDAY(A3:A20, 2)>5))

    หากต้องการ นับวันทำงาน สูตรใน D4 ใช้รูปแบบนี้:

    =SUM(--(WEEKDAY(A3:A20, 2)<6))

    ใน Excel 365 และ Excel 2021 ที่จัดการอาร์เรย์แบบเนทีฟ สูตรนี้ทำงานเหมือนสูตรปกติดังที่แสดงในภาพหน้าจอด้านล่าง ใน Excel 2019 และรุ่นก่อนหน้า ให้กด Ctrl + Shift + Enter เพื่อทำให้เป็นสูตรอาร์เรย์

    สูตรเหล่านี้ทำงานอย่างไร:

    ฟังก์ชัน WEEKDAY ที่มี return_type ตั้งค่าเป็น 2 จะส่งกลับตัวเลขวันตั้งแต่ 1 (จันทร์) ถึง 7 (อาทิตย์ ) สำหรับแต่ละวันที่ในช่วง A3:A20 นิพจน์เชิงตรรกะจะตรวจสอบว่าตัวเลขที่ส่งคืนมีค่ามากกว่า 5 (สำหรับวันหยุดสุดสัปดาห์) หรือน้อยกว่า 6 (สำหรับวันธรรมดา) ผลลัพธ์ของการดำเนินการนี้คืออาร์เรย์ของค่า TRUE และ FALSE

    การปฏิเสธสองครั้ง (--) บังคับให้ค่าตรรกะเป็น 1 และ 0 และฟังก์ชัน SUM ก็บวกกัน เนื่องจาก 1 (TRUE) แทนวันที่ต้องนับและ 0 (FALSE) เป็นวันที่จะละเว้น คุณจะได้ผลลัพธ์ที่ต้องการ

    เคล็ดลับ ในการคำนวณ วันทำงานระหว่างสองวัน ให้ใช้ฟังก์ชัน NETWORKDAYS หรือ NETWORKDAYS.INTL

    ถ้าเป็นวันธรรมดา ถ้าวันเสาร์หรือวันอาทิตย์ จากนั้น

    สุดท้าย เรามาคุยกันอีกสักหน่อย กรณีเฉพาะที่แสดงวิธีกำหนดวันในสัปดาห์ และถ้าเป็นวันเสาร์หรือวันอาทิตย์ ให้ทำอย่างอื่น ถ้าเป็นวันธรรมดา ให้ทำอย่างอื่น

    IF(WEEKDAY( cell , 2)> 5, if_weekend_then , if_weekday_then )

    สมมติว่าคุณกำลังคำนวณการจ่ายเงินสำหรับพนักงานที่ทำงานพิเศษในวันหยุด ดังนั้นคุณต้องเพื่อใช้อัตราการชำระเงินที่แตกต่างกันสำหรับวันทำงานและวันหยุดสุดสัปดาห์ ซึ่งสามารถทำได้โดยใช้คำสั่ง IF ต่อไปนี้:

    • ในอาร์กิวเมนต์ logical_test ให้ซ้อนฟังก์ชัน WEEKDAY ที่ตรวจสอบว่าวันที่กำหนดให้เป็นวันทำงานหรือวันหยุดสุดสัปดาห์
    • ในอาร์กิวเมนต์ value_if_true ให้คูณจำนวนชั่วโมงทำงานด้วยอัตราวันหยุดสุดสัปดาห์ (G4)
    • ในอาร์กิวเมนต์ value_if_false ให้คูณจำนวนชั่วโมงทำงาน ตามอัตราวันทำงาน (G3)

    สูตรที่สมบูรณ์ใน D3 ใช้แบบฟอร์มนี้:

    =IF(WEEKDAY(B3, 2)>5, C3*$G$4, C3*$G$3)

    เพื่อให้สูตรคัดลอกไปยังเซลล์ด้านล่างได้อย่างถูกต้อง อย่าลืมล็อกที่อยู่ของเซลล์อัตราด้วยเครื่องหมาย $ (เช่น $G$4)

    ฟังก์ชัน WEEKDAY ไม่ทำงาน

    โดยทั่วไป มีข้อผิดพลาดทั่วไปสองข้อที่สูตร WEEKDAY อาจส่งคืน:

    #VALUE! ข้อผิดพลาดจะเกิดขึ้นหาก:

    • Serial_number หรือ return_type ไม่ใช่ตัวเลข
    • Serial_number หมด ช่วงวันที่ที่รองรับ (1900 ถึง 9999)

    #NUM! เกิดข้อผิดพลาดเมื่อ return_type อยู่นอกช่วงที่อนุญาต (1-3 หรือ 11-17)

    นี่คือวิธีใช้ฟังก์ชัน WEEKDAY ใน Excel เพื่อจัดการวันในสัปดาห์ ในบทความถัดไป เราจะสำรวจฟังก์ชันของ Excel เพื่อทำงานในหน่วยเวลาที่ใหญ่ขึ้น เช่น สัปดาห์ เดือน และปี โปรดติดตามและขอขอบคุณที่อ่าน!

    แบบฝึกหัดสำหรับการดาวน์โหลด

    สูตร WEEKDAY ใน Excel - ตัวอย่าง (.xlsxไฟล์)

    Michael Brown เป็นผู้ที่ชื่นชอบเทคโนโลยีโดยเฉพาะและมีความหลงใหลในการทำให้กระบวนการที่ซับซ้อนง่ายขึ้นโดยใช้เครื่องมือซอฟต์แวร์ ด้วยประสบการณ์กว่าทศวรรษในอุตสาหกรรมเทคโนโลยี เขาได้ฝึกฝนทักษะของเขาใน Microsoft Excel และ Outlook รวมถึง Google ชีตและเอกสาร บล็อกของ Michael ทุ่มเทให้กับการแบ่งปันความรู้และความเชี่ยวชาญของเขากับผู้อื่น โดยให้คำแนะนำและแบบฝึกหัดที่ทำตามได้ง่ายเพื่อปรับปรุงผลิตภาพและประสิทธิภาพ ไม่ว่าคุณจะเป็นมืออาชีพที่ช่ำชองหรือมือใหม่ บล็อกของ Michael นำเสนอข้อมูลเชิงลึกอันมีค่าและคำแนะนำที่เป็นประโยชน์สำหรับการใช้ประโยชน์สูงสุดจากเครื่องมือซอฟต์แวร์ที่จำเป็นเหล่านี้