วิธีจัดเรียงตามวันที่ใน Excel: ตามลำดับ, เรียงตามเดือน, จัดเรียงอัตโนมัติ

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

สารบัญ

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

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

    วิธีจัดเรียงวันที่ตามลำดับเวลา

    การจัดเรียง วันที่ตามลำดับเวลาใน Excel นั้นง่ายมาก คุณเพียงแค่ใช้ตัวเลือก เรียงจากน้อยไปมาก มาตรฐาน:

    1. เลือกวันที่ที่คุณต้องการจัดเรียงตามลำดับเวลา
    2. ในแท็บ หน้าแรก ในกลุ่ม รูปแบบ ให้คลิก จัดเรียง & กรอง และเลือก เรียงลำดับจากเก่าที่สุดไปหาใหม่ที่สุด หรือ คุณสามารถใช้ตัวเลือก A-Z บนแท็บ ข้อมูล ใน เรียงลำดับ & กรอง กลุ่ม

    วิธีจัดเรียงตามวันที่ใน Excel

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

    ต่อไปนี้เป็นขั้นตอนโดยละเอียดในการจัดเรียงข้อมูลใน Excel ตามวันที่:

    1. ใน สเปรดชีตของคุณ เลือกวันที่โดยไม่มีคอลัมน์ส่วนหัว
    2. บนแท็บ หน้าแรก คลิก จัดเรียง & กรอง และเลือก เรียงลำดับจากเก่าที่สุดไปใหม่ที่สุด .

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

    นั่นแหละ! บันทึกถูกจัดเรียงตามวันที่และแถวทั้งหมดจะถูกเก็บไว้ด้วยกัน:

    วิธีจัดเรียงตามเดือนใน Excel

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

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

    ในภาพหน้าจอด้านล่าง เราแยกหมายเลขเดือนจากวันที่ใน B2 ด้วยสูตรนี้:

    =MONTH(B2)

    เคล็ดลับ ถ้าผลลัพธ์แสดงเป็นวันที่แทนที่จะเป็นตัวเลข ให้ตั้งค่ารูปแบบ ทั่วไป เป็นเซลล์สูตร

    และตอนนี้ จัดเรียงตารางของคุณตามคอลัมน์ เดือน สำหรับสิ่งนี้ ให้เลือกหมายเลขเดือน (C2:C8) คลิก จัดเรียง & กรอง > เรียงลำดับจากเล็กที่สุดไปหาใหญ่ที่สุด แล้วขยายส่วนที่เลือกเมื่อ Excel ขอให้คุณทำเช่นนั้น หากทำทุกอย่างถูกต้อง คุณจะได้รับสิ่งต่อไปนี้ผลลัพธ์:

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

    หากป้อนชื่อเดือนเป็น ข้อความ ให้จัดเรียง ตามรายการที่กำหนดเองตามที่อธิบายในตัวอย่างนี้

    วิธีจัดเรียงวันเกิดใน Excel ตามเดือนและวัน

    เมื่อจัดเรียงวันที่สำหรับปฏิทินวันเกิด วิธีแก้ปัญหาที่ดีที่สุดคือการจัดเรียงวันที่ตามเดือน และ วัน. ดังนั้น คุณต้องใช้สูตรที่จะดึงเดือนและวันจากวันเดือนปีเกิด

    ในกรณีนี้ ฟังก์ชัน Excel TEXT ซึ่งสามารถแปลงวันที่เป็นสตริงข้อความในรูปแบบที่ระบุจะมีประโยชน์ . เพื่อวัตถุประสงค์ของเรา โค้ดรูปแบบ "mmdd" หรือ "mm.dd" จะใช้งานได้

    ด้วยวันที่ต้นฉบับใน B2 สูตรจะอยู่ในรูปแบบนี้:

    =TEXT(B2, "mm.dd")

    ถัดไป จัดเรียงคอลัมน์ เดือนและวัน จากมากไปน้อย แล้วข้อมูลจะเรียงตามลำดับวันของแต่ละเดือน

    ผลลัพธ์เดียวกันสามารถทำได้โดยใช้สูตร DATE ดังนี้:

    =DATE(2000, MONTH(B2),DAY(B2))

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

    วิธีจัดเรียงข้อมูลตามปีใน Excel

    เมื่อพูดถึง การจัดเรียงตามปี วิธีที่ง่ายที่สุดคือการจัดเรียงวันที่ตามลำดับเวลาด้วยตัวเลือกการเรียงลำดับจากน้อยไปมากของ Excel ( เก่าที่สุดไปใหม่ที่สุด )

    การดำเนินการนี้จะจัดเรียงวันที่ ตามปี จากนั้นตามเดือน และตามวันตามที่แสดงในภาพหน้าจอด้านล่าง

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

    =YEAR(C2)

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

    หากคุณต้องการ จัดเรียงวันที่ตามวัน โดยไม่คำนึงถึงเดือนและปี ให้แยกวันโดยใช้ฟังก์ชัน DAY แล้วจัดเรียงตามคอลัมน์ วัน :

    =DAY(B2)

    วิธีจัดเรียงตามวันในสัปดาห์ใน Excel

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

    สำหรับสัปดาห์ที่เริ่มต้นจากวันอาทิตย์ (1 ) ถึงวันเสาร์ (7) นี่คือสูตรที่จะใช้:

    =WEEKDAY(A2)

    หากสัปดาห์ของคุณเริ่มตั้งแต่วันจันทร์ (1) ถึงวันอาทิตย์(7) นี่คืออันที่ถูกต้อง:

    =WEEKDAY(A2, 2)

    โดยที่ A2 คือเซลล์ที่มีวันที่

    สำหรับตัวอย่างนี้ เราใช้สูตรแรกและได้สิ่งนี้ ผลลัพธ์:

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

    วิธีจัดเรียงข้อมูลใน Excel ตามชื่อเดือน (หรือชื่อวันในสัปดาห์)

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

    1. เลือกระเบียนที่คุณต้องการจัดเรียงตามชื่อเดือน
    2. ในแท็บ ข้อมูล ใน จัดเรียง & กรอง กลุ่ม คลิก จัดเรียง .
    3. ในกล่องโต้ตอบ จัดเรียง ให้ทำดังนี้:
      • ใต้ คอลัมน์ เลือกชื่อของคอลัมน์ที่มีชื่อเดือน
      • ภายใต้ จัดเรียงตาม เลือก ค่าเซลล์ .
      • ภายใต้ สั่งซื้อ เลือก รายการกำหนดเอง .
    4. ในกล่องโต้ตอบ รายการกำหนดเอง เลือก ชื่อเต็มของเดือน ( มกราคม , กุมภาพันธ์ , มีนาคม , …) หรือชื่อย่อ ( ม.ค. , ก.พ. , มี.ค. …) ขึ้นอยู่กับการแสดงเดือนในเวิร์กชีตของคุณ:

  • คลิก ตกลง สองครั้งเพื่อปิดกล่องโต้ตอบทั้งสองกล่อง
  • เสร็จแล้ว! ข้อมูลของคุณจัดเรียงตามชื่อเดือนตามลำดับเวลา ไม่ใช่ตามตัวอักษร:

    เคล็ดลับ หากต้องการจัดเรียงตาม ชื่อของ วันในสัปดาห์ ให้เลือกชื่อเต็ม ( วันอาทิตย์ , วันจันทร์ , วันอังคาร , …) หรือชื่อย่อ ( อาทิตย์ , จันทร์ , อังคาร …) ในกล่องโต้ตอบ รายการที่กำหนดเอง

    วิธีจัดเรียงอัตโนมัติตามวันที่ใน Excel

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

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

    มาโคร 1: จัดเรียงอัตโนมัติเมื่อมีการเปลี่ยนแปลงเวิร์กชีตทุกครั้ง

    แมโครนี้ถูกดำเนินการเมื่อใดก็ตามที่มีการเปลี่ยนแปลงเกิดขึ้นที่ใดก็ได้ในเวิร์กชีต

    จะถือว่าข้อมูลของคุณอยู่ในคอลัมน์ A ถึง C และวันที่ที่คุณต้องการเรียงลำดับจะอยู่ในคอลัมน์ C โดยเริ่มจาก C2 สันนิษฐานว่าแถวที่ 1 มีส่วนหัว (Header:=xlYes) หากระเบียนของคุณอยู่ในคอลัมน์อื่น ให้ปรับเปลี่ยนดังต่อไปนี้:

    • เปลี่ยนการอ้างอิง A1 เป็นเซลล์ด้านซ้ายบนของคุณช่วงเป้าหมาย (รวมถึงส่วนหัว)
    • เปลี่ยนการอ้างอิง C2 เป็นเซลล์บนสุดที่มีวันที่
    แผ่นงานย่อยส่วนตัว_เปลี่ยน (ByVal Target As Range) เมื่อเกิดข้อผิดพลาด ดำเนินการต่อช่วงถัดไป ( "A1" ) .Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End Sub

    มาโคร 2: จัดเรียงอัตโนมัติเมื่อ การเปลี่ยนแปลงจะเกิดขึ้นในช่วงที่กำหนด

    หากคุณกำลังทำงานกับเวิร์กชีตขนาดใหญ่ที่มีข้อมูลจำนวนมาก การจัดเรียงใหม่เมื่อมีการเปลี่ยนแปลงใดๆ ในชีตอาจสร้างปัญหาได้ ในกรณีนี้ คุณควรจำกัดการทริกเกอร์ของมาโครไว้ที่การเปลี่ยนแปลงที่เกิดขึ้นในช่วงหนึ่งๆ รหัส VBA ต่อไปนี้จะจัดเรียงข้อมูลเฉพาะเมื่อมีการเปลี่ยนแปลงในคอลัมน์ C ที่มีวันที่

    แผ่นงานย่อยส่วนตัว _Change ( ByVal Target As Range) เมื่อเกิดข้อผิดพลาด ดำเนินการต่อ ถัดไป หากไม่ตัดกัน (เป้าหมาย, ช่วง ( "C: C" )) ไม่มีอะไรแล้วช่วง ( "A1" ) .Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom จบถ้าจบย่อย

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

    วิธีเพิ่มมาโครในเวิร์กชีตของคุณ

    เนื่องจากมาโครทั้งสองจะทำงานโดยอัตโนมัติในการเปลี่ยนแปลงของเวิร์กชีตควรใส่รหัสในแผ่นงานที่คุณต้องการจัดเรียงข้อมูล (Sheet1 ในตัวอย่างนี้) มีวิธีการดังนี้:

    1. กด Alt + F11 เพื่อเปิดโปรแกรมแก้ไข VBA
    2. ใน Project Explorer ทางด้านซ้าย ให้ดับเบิลคลิกที่แผ่นงานที่คุณต้องการ จัดเรียงอัตโนมัติ
    3. วางโค้ดในหน้าต่างโค้ด

    จัดเรียงวันที่อัตโนมัติด้วยสูตร

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

    =IFERROR(INDEX($A$2:$A$20, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$20, "<="&$A$2:$A$20), 0)), "")

    โดยที่ A2:A20 เป็นวันที่ดั้งเดิม (ไม่เรียงลำดับ) รวมถึงเซลล์ว่างสองสามเซลล์สำหรับรายการใหม่ที่เป็นไปได้

    ป้อนสูตรในเซลล์ว่างข้างคอลัมน์ที่มีวันที่เดิม (C2 ในตัวอย่างนี้) แล้วกดปุ่ม Ctrl + Shift + Enter พร้อมกันเพื่อทำให้สูตรสมบูรณ์ จากนั้น ลากสูตรลงไปที่เซลล์ที่เหลือ (C2:C20 ในกรณีของเรา)

    เคล็ดลับ หากต้องการจัดเรียงวันที่ที่เพิ่มใหม่โดยอัตโนมัติ ต้องแน่ใจว่าได้รวมเซลล์ว่างในจำนวนที่เพียงพอในช่วงที่อ้างอิง ตัวอย่างเช่น รายการวันที่ของเราอยู่ในช่วง A2:A7 แต่เราใส่ $A$2:$A$20 ลงในสูตร และเติมลงในเซลล์ C2 ถึง C20 ฟังก์ชัน IFERROR ป้องกันข้อผิดพลาดในเซลล์พิเศษ โดยส่งคืนสตริงว่าง ("") แทน

    จัดเรียง Excel ตามวันที่ไม่ทำงาน

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

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

    ดาวน์โหลดได้

    ตัวอย่างสูตรเรียงตามวันที่ (ไฟล์ .xlsx)

    มาโครจัดเรียงอัตโนมัติ ( .xlsm)

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