Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> Office

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

การมีข้อมูลที่เกี่ยวข้องกับวันที่และต้องการจัดเรียงแถวใน Excel ตามวันที่เป็นเรื่องปกติ ฟีเจอร์ต่างๆ ของ Excel เช่น Sort & Filter, Filter, Custom Sort, Context Menu Options และฟังก์ชันหลายตัว เช่น MONTH, YEAR, SORT, SORTBY รวมถึง VBA Macro สามารถจัดเรียงแถวตามวันที่ได้อย่างมีประสิทธิภาพ

สมมติว่าเรามีชุดข้อมูลที่บันทึก ต้นทุนรวม ที่เกิดขึ้นในวันที่เฉพาะ ตอนนี้เราต้องการจัดเรียงชุดข้อมูลทั้งหมดตามวันที่

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

ในบทความนี้ เราจะสาธิตฟีเจอร์ ฟังก์ชัน และ VBA Macro หลายวิธีในการจัดเรียงแถวตามวันที่

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

8 วิธีง่ายๆ ในการจัดเรียงแถวตามวันที่ใน Excel

การจัดเรียงเป็นเครื่องมือสำคัญในการทำความเข้าใจชุดข้อมูล การจัดเรียงตามวันที่ช่วยให้ผู้ใช้จัดการข้อมูลได้ง่ายขึ้น มีหลายวิธีในการจัดเรียงข้อมูลตามวันที่ سواءในตำแหน่งเดิมหรือตำแหน่งใหม่ในแผ่นข้อมูล ตามวิธีที่อธิบายไว้ด้านล่างเพื่อจัดเรียงข้อมูลตามวันที่ได้อย่างมีประสิทธิภาพ

วิธีที่ 1: ใช้ฟีเจอร์ Sort & Filter

Excel มีฟีเจอร์ Sort & Filter ทั้งในแท็บ Home และ Data ใช้ตัวไหนก็ได้เพื่อจัดเรียงแถวตามวันที่

🔺 หากต้องการใช้ Sort & Filter ให้ไปที่ Home > เลือก Sort & Filter (จากส่วน Editing) > เลือก Sort Oldest to Newest (A⟶Z) สามารถใช้ตัวเลือกการจัดเรียงใดๆ ก็ได้ (เช่น Sort Oldest to Newest (A⟶Z) หรือ Sort Newest to Oldest (Z⟶A))

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 หรือสามารถไปที่ Data > คลิกที่ (A⟶Z) หรือ (Z⟶A) จากส่วน Sort & Filter

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 ในทั้งสองกรณี Excel จะแสดง Sort Warning ว่าต้องการขยายการจัดเรียงหรือไม่ การจัดเรียง Continue with current selection จะทำให้วัตถุประสงค์ของการจัดเรียงไม่สำเร็จ ดังนั้นให้เลือก Expand the selection และคลิก Sort

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 ท้ายที่สุดทั้งสองวิธีจะได้ผลลัพธ์คล้ายกัน ตามภาพด้านล่าง จากภาพ можноเห็นว่าชุดข้อมูลทั้งหมดถูกจัดเรียงตามวันที่ (Oldest ถึง Newest)

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

แป้นลัด ALT+A+S+A ใช้สำหรับจัดเรียง Oldest to Newest และ ALT+A+S+D สำหรับ Newest to Oldest

อ่านเพิ่มเติม: [แก้ไข:] Sort and Filter Not Working in Excel

วิธีที่ 2: ใช้ Context Menu Options จัดเรียงแถวตามวันที่

🔺 เลือกคอลัมน์ Date ในชุดข้อมูล และคลิกขวา จะปรากฏ Context Menu จากเมนูนี้ ให้เลือก Sort > เลือก Sort Oldest to Newest หรือ Sort Newest to Oldest

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 หน้าต่าง Sort Warning จะปรากฏขึ้น ให้เลือก Expand the selection แล้วคลิก Sort หากเลือก Continue with current selection จะจัดเรียงเฉพาะคอลัมน์ Date ทำให้ข้อมูลเพี้ยนไป

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 หลังจากนั้น Excel จะจัดเรียงข้อมูลตามที่เลือก (Oldest to Newest หรือ Newest to Oldest) ตามภาพด้านล่าง

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: How to Sort Data by Row Not Column in Excel (2 Easy Methods)

วิธีที่ 3: ใช้ฟีเจอร์ Filter จัดเรียงแถว

คล้ายกับฟีเจอร์ Sort & Filter, Filter ก็สามารถจัดเรียงข้อมูลตามวันที่ได้ เริ่มต้นวิธีนี้เลย

🔺 ก่อนอื่น ไปที่ Home > เลือก Sort & Filter (จากส่วน Editing) > เลือก Filter เพื่อใช้กับชุดข้อมูล

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 หลังจากนั้น คลิกที่ไอคอน Filter ติดหัวคอลัมน์ Date จะปรากฏกล่องคำสั่ง Filter ให้เลือกตัวเลือกใดตัวเลือกหนึ่ง (เช่น Sort Oldest to Newest หรือ Sort Newest to Oldest) เพื่อจัดเรียงแถวตามวันที่

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 ตอนนี้สามารถตรวจสอบได้ว่าชุดข้อมูลถูกจัดเรียงตามที่ต้องการหรือไม่

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: Difference Between Sort and Filter in Excel

วิธีที่ 4: จัดเรียงแถวตามวันที่ด้วย Custom Sort

ตัวเลือก Custom Sort ให้จัดเรียงโดยใช้หัวคอลัมน์ใดก็ได้ ขึ้นอยู่กับ Value, Color, Font Color, และ Conditional Formatting Icon ของเซลล์ สำหรับการจัดเรียงวันที่ มีตัวเลือก Oldest to Newest, Newest to Oldest, และ Custom List

🔺 ไปที่แท็บ Home > คลิก Sort & Filter (จากส่วน Editing) > เลือก Custom Sort

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 กล่องโต้ตอบ Sort จะเปิดขึ้น

⧫ เลือก Order Date เป็น Sort by

⧫ Cell Values เป็น Sort On

⧫ Oldest to Newest หรือ Newest to Oldest เป็น Order

สุดท้าย คลิก OK

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 ในไม่กี่วินาที ชุดข้อมูลทั้งหมดจะถูกจัดเรียงตามที่เลือก ตามภาพด้านล่าง

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: How to Create Custom Sort List in Excel

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

  • Auto Sort When Data Is Entered in Excel (3 Methods)
  • How to Sort by Last Name in Excel (4 Methods)
  • Sorting Columns in Excel While Keeping Rows Together
  • Sort Column by Value in Excel (5 Methods)
  • Random Sort in Excel (Formulas + VBA)

วิธีที่ 5: จัดเรียงตามวันที่โดยใช้ผลลัพธ์จากฟังก์ชัน

สามารถใช้คอลัมน์ช่วย (helper column) เพื่อดึงหมายเลข เดือนและปี จากวันที่โดยใช้ฟังก์ชัน MONTH และ DAY แล้วจัดเรียงชุดข้อมูลทั้งหมดโดยใช้ผลลัพธ์ของฟังก์ชันเหล่านี้ เราแก้ไขชุดข้อมูลเพื่อใช้ฟังก์ชัน MONTH เป็นวิธีจัดเรียงตามวันที่ ฟังก์ชัน YEAR ก็สามารถใช้ได้เช่นกัน ขึ้นอยู่กับประเภทข้อมูล

🔺 พิมพ์สูตรต่อไปนี้ในเซลล์ว่างใดๆ (เช่น E5)

=MONTH(B5)

สูตรนี้จะดึงหมายเลขเดือนจากรายการวันที่

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 ใช้ Fill Handle คัดลอกสูตรไปยังเซลล์อื่นๆ

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 ใช้ Filter กับชุดข้อมูลตาม วิธีที่ 3 แล้วคลิกไอคอน Filter เพื่อจัดเรียงชุดข้อมูลทั้งหมดตามตัวเลือกที่ต้องการ (เช่น Sort Smallest to Largest หรือ Sort Largest to Smallest)

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔼 จะเห็นว่า Excel จัดเรียงชุดข้อมูลทั้งหมดตามที่เลือก ตามภาพด้านล่าง

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: Excel Sort By Date And Time [4 Smart Ways]

วิธีที่ 6: ใช้ฟังก์ชัน SORT Family จัดเรียงแถวตามวันที่

Excel 365 มีฟังก์ชันสองตัวที่คล้ายกันสำหรับการจัดเรียง คือ SORT และ SORTBY ซึ่งจัดเรียงชุดข้อมูลโดยใช้คอลัมน์เฉพาะ ไวยากรณ์ของฟังก์ชัน SORT คือ

SORT (array, [sort_index], [sort_order], [by_col])

อาร์กิวเมนต์ของฟังก์ชัน:

array; ช่วงหรืออาร์เรย์ที่ต้องการจัดเรียง

sort_index; หมายเลขคอลัมน์ที่ใช้จัดเรียง ค่าเริ่มต้นคือ 1 [Optional]

sort_order; ประเภทการจัดเรียง: Ascending = 1, Descending = -1 ค่าเริ่มต้นคือ Ascending [Optional]

by_col; ตัวเลือก เช่น Sort by Column = TRUE, Sort by Row = FALSE ค่าเริ่มต้นคือ Sort by Row (เช่น FALSE) [Optional]

🔺 ใช้สูตรต่อไปนี้ในเซลล์ใดๆ (เช่น H5)

=SORT(B5:F16,1,1,FALSE)

ในสูตรนี้:

array = B5:F16

sort_index = 1

sort_order = 1 (Ascending)

by_col = FALSE

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 กด ENTER เพื่อรันสูตร ในไม่กี่วินาที ชุดข้อมูลทั้งหมดจะถูกจัดเรียงในตำแหน่งใหม่ภายในแผ่นงาน เนื่องจากเลือก Ascending order Excel จะจัดเรียงรายการตามวันที่

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔄 ต่างจากฟังก์ชัน SORT, ฟังก์ชัน SORTBY ให้การจัดเรียงหลายระดับ (multi-level sorting) ไวยากรณ์ของฟังก์ชัน SORTBY คือ

SORTBY (array, by_array, [sort_order], [array/order], ...)

คำอธิบาย:

array; ช่วงหรืออาร์เรย์ที่ต้องการจัดเรียง

by_array; ช่วงหรืออาร์เรย์ที่ใช้จัดเรียง

sort_order; Ascending = 1 (ค่าเริ่มต้น), Descending = -1

array/order; คู่ของอาร์เรย์เพิ่มเติมและลำดับการจัดเรียง [Optional]

🔺 วางสูตรด้านล่างในเซลล์ว่าง (เช่น H5) แล้วกด ENTER

=SORTBY(B5:F16,B5:B16,1)

เปรียบเทียบไวยากรณ์: array = B5:F16, by_array = B5:B16, sort_order = 1 (Ascending)

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: How to Sort Multiple Rows in Excel (2 Ways)

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

สูตร INDEX-MATCH ช่วยให้วันที่จัดเรียงอัตโนมัติตามวันที่ พิมพ์สูตรต่อไปนี้ในเซลล์ C5

=IFERROR(INDEX($B$5:$B$16, MATCH(ROWS($B$5:B5),COUNTIF($B$5:$B$16, "<="&$B$5:$B$16), 0)), "")

🔼 ส่วน MATCH(ROWS($B$5:B5),COUNTIF($B$5:$B$16, "<="&$B$5:$B$16), 0) ➤ ทำงานเป็น row_num สำหรับฟังก์ชัน INDEX

🔼 ROWS($B$5:B5) ➤ ส่ง lookup_value ให้ฟังก์ชัน MATCH โดยใช้ฟังก์ชัน ROWS

🔼 COUNTIF($B$5:$B$16, "<="&$B$5:$B$16) ➤ ส่ง lookup_array ให้ MATCH โดยใช้ COUNTIF

🔼 0 ➤ ระบุ match_type (เช่น Exact Match) สำหรับ MATCH

🔺 กด ENTER และใช้ Fill Handle คัดลอกสูตรไปยังเซลล์อื่นๆ

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 หรือใช้สูตรด้านล่างเพื่อจัดอันดับวันที่แทนฟังก์ชัน COUNTIF และดึงคอลัมน์เฉพาะ

=INDEX(B5:F16,MATCH(ROW(A1:A12),RANK(B5:B16,B5:B16,1),0),{1,2,5})

สูตรนี้ประกาศอาร์กิวเมนต์เหมือนสูตรก่อนหน้า แต่ใช้ฟังก์ชัน RANK แทน COUNTIF และดึงคอลัมน์เฉพาะตามต้องการ

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: How to Auto Sort Table in Excel (5 Methods)

วิธีที่ 8: จัดเรียงตามวันที่ด้วย VBA Macro

VBA Macro สามารถจัดเรียงชุดข้อมูลตามวันที่ได้

🔺 กด ALT+F11 เปิด Microsoft Visual Basic คลิกสองครั้งที่ Worksheet ที่ต้องการ

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

🔺 วางแมโครต่อไปนี้ในหน้าต่างโค้ดของ Sheet

Private Sub Worksheet_Change(ByVal Rng As Range)
On Error Resume Next
Range("B4").Sort Key1:=Range("B5"), _
Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
End Sub

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

Range แรก (เช่น B4) คือเซลล์สุดซ้ายในชุดข้อมูล Range ต่อไป (เช่น B5) กำหนดจุดเริ่มต้นของข้อมูล แล้วบรรทัดแมโครสั่งให้จัดเรียงชุดข้อมูลในลำดับ Ascending ด้วยการจัดวาง Top to Bottom

🔼 หลังจากใส่แมโคร กลับไปที่ Worksheet เพิ่มหรือลบแถว หรือกด ENTER เพื่อจัดระเบียบข้อมูล ตามภาพด้านล่าง

เชี่ยวชาญ Excel: 8 วิธีที่พิสูจน์แล้วในการจัดเรียงแถวตามวันที่

อ่านเพิ่มเติม: VBA to Sort Table in Excel (4 Methods)

สรุป

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

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

  • How to Use Sort Function in Excel VBA (8 Suitable Examples)
  • How to Sort Array with Excel VBA (Both Ascending and Descending Order)
  • VBA to Sort Column in Excel (4 Methods)
  • How to Sort Unique List in Excel (10 Useful Methods)
  • How to Add Sort Button in Excel (7 Methods)
  • Sort IP Address in Excel (6 Methods)