SORTBY
อัปเดต 23 ก.ย. 2569 · ตรวจ syntax และเวอร์ชันกับเอกสารของ Microsoft · ผลในตัวอย่างคำนวณด้วย LibreOffice และตรงกับตัวคำนวณของหน้าเว็บ
SORTBY คืออะไร
เรียงข้อมูลตามช่วงอื่นหรือค่าที่คำนวณได้ และเรียงหลายลำดับในสูตรเดียว
ใช้เมื่อไหร่
- จัดอันดับพนักงานตาม % ของเป้า โดยไม่ต้องเพิ่มคอลัมน์
- เรียงรายงานหลายลำดับ เช่น ช่องทาง แล้วยอด
- เรียงตามลำดับที่ธุรกิจกำหนดเอง
รูปแบบสูตร
Argument แต่ละตัว
ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น
| Argument | จำเป็นไหม | ความหมาย |
|---|---|---|
| array | จำเป็น | ช่วงหรือ array ที่ต้องการเรียงและแสดงผล |
| by_array1 | จำเป็น | ช่วงหรือค่าที่ใช้เรียง ต้องมีจำนวนแถวเท่ากับ array |
| [sort_order1] | ไม่บังคับ | 1 น้อยไปมาก (ค่าเริ่มต้น) · -1 มากไปน้อย |
| [by_array2, sort_order2], … | ไม่บังคับ | ลำดับถัดไป ใช้ตัดสินเมื่อค่าของลำดับก่อนหน้าเท่ากัน |
ลองเลย: ตัวอย่างที่เปลี่ยนค่าได้
ข้อมูลชุดเดียวกับไฟล์ฝึก เปลี่ยนค่าในช่องกรอก หรือคลิกตัวเลขในตารางเพื่อแก้ แล้วดูผลลัพธ์เปลี่ยนทันที กดถัดไปเพื่อดูว่า Excel คิดทีละขั้นอย่างไร สีของช่วงในตารางตรงกับสีในสูตร
by_array = D5:D12/C5:C12 คำนวณ % ของเป้าในสูตรเลย ไม่ต้องเพิ่มคอลัมน์ช่วย
| แถว | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 4 | พนักงานขาย | ภูมิภาค | เป้ายอดขาย (บาท) | ยอดขายจริง (บาท) | คะแนนลูกค้า (เต็ม 5) | ||
| 5 | เอกชัย บัวทอง | ใต้ | 12,000,000 | 12,706,667 | 4.6 | ||
| 6 | ธีรพงษ์ ฉัตรแก้ว | ตะวันออกเฉียงเหนือ | 11,000,000 | 10,668,812 | 3.8 | ||
| 7 | สุภาพร หงษ์ทอง | ตะวันออก | 9,000,000 | 9,700,599 | 4.2 | ||
| 8 | นันทิดา กิจเจริญ | กลาง | 10,000,000 | 9,123,730 | 4.5 | ||
| 9 | กมลชนก พงษ์พานิช | เหนือ | 7,000,000 | 7,651,296 | 4.1 | ||
| 10 | กานดา ดีพร้อม | ตะวันออกเฉียงเหนือ | 7,500,000 | 6,853,226 | 3.9 | ||
| 11 | เอกชัย มั่งมีศรี | กลาง | 6,000,000 | 6,635,892 | 4.7 | ||
| 12 | นภาพร แสงทอง | เหนือ | 7,000,000 | 5,919,123 | 3.5 | ||
| 13 | ผลลัพธ์จากสูตรในช่อง A15 · spill ลงมาเอง | ||||||
| 14 | พนักงานขาย | ภูมิภาค | |||||
| 15 | เอกชัย มั่งมีศรี | กลาง | |||||
| 16 | กมลชนก พงษ์พานิช | เหนือ | |||||
| 17 | สุภาพร หงษ์ทอง | ตะวันออก | |||||
| 18 | เอกชัย บัวทอง | ใต้ | |||||
| 19 | ธีรพงษ์ ฉัตรแก้ว | ตะวันออกเฉียงเหนือ | |||||
| 20 | กานดา ดีพร้อม | ตะวันออกเฉียงเหนือ | |||||
| 21 | นันทิดา กิจเจริญ | กลาง | |||||
| 22 | นภาพร แสงทอง | เหนือ | |||||
| 23 | |||||||
| 24 | |||||||
| 25 | |||||||
ขั้นตอนการคำนวณ (2)
- เอกชัย มั่งมีศรี ทำได้ 110.6% ของเป้า จึงอยู่อันดับแรก แม้ยอดขายจริงจะน้อยเป็นอันดับ 2 ของทีม
- by_array ต้องมีจำนวนแถวเท่ากับ array
- SORT ทำแบบนี้ไม่ได้ถ้าไม่เพิ่มคอลัมน์ % ในตาราง
ตัวอย่างทั้งหมด 3 แบบ
- 1เรียงพนักงานตาม % ของเป้า · by_array = D5:D12/C5:C12 คำนวณ % ของเป้าในสูตรเลย ไม่ต้องเพิ่มคอลัมน์ช่วย
- 2เรียงตามช่องทาง แล้วตามยอดสุทธิ · ลำดับแรก ช่องทาง A→Z · ลำดับที่สอง ยอดสุทธิจากมากไปน้อยในช่องทางเดียวกัน
- 3เรียงช่องทางตามลำดับที่กำหนดเอง · MATCH แปลงชื่อช่องทางเป็นลำดับตามรายการใน I4:I7 แล้วใช้เป็น by_array
ข้อผิดพลาดที่พบบ่อย
เคล็ดลับจากห้องเรียน
ใช้กับ Excel ของคุณได้ไหม
| เวอร์ชัน | Excel 2016 | Excel 2019 | Excel 2021 | Excel 2024 | Microsoft 365 |
|---|---|---|---|---|---|
| SORTBY |
ใช้ Excel 2016 หรือ 2019 ให้ใช้สูตรเหล่านี้แทน ได้ผลเท่ากับตัวอย่างที่ระบุ และมีในชีต “Excel 2016-2019” ของไฟล์ฝึก ต่างจาก SORTBY ตรงที่ผลลัพธ์ไม่ spill เอง ต้องลากสูตรลงให้พอกับจำนวนรายการ (ไม่ต้องกด Ctrl + Shift + Enter)
| แทนตัวอย่าง | สูตรทางเลือก |
|---|---|
| คอลัมน์ช่วย % ของเป้า | =D5/C5 แล้วลากลง |
| ตัวอย่าง 1 เรียงตาม % ของเป้า | =INDEX($A$5:$A$12,MATCH(LARGE($F$5:$F$12,ROWS($A$5:A5)),$F$5:$F$12,0)) |
Office 2016 และ 2019 หมดระยะสนับสนุนตั้งแต่ 14 ต.ค. 2568 ไฟล์ยังเปิดได้ แต่ไม่มีอัปเดตความปลอดภัย
เลือกวิธีให้ถูกงาน
| วิธี | ใช้เมื่อ | ตัวอย่าง |
|---|---|---|
| SORT | เรียงตามคอลัมน์ใน array โดยระบุเลขลำดับ | =SORT(A5:F14,6,-1) |
| SORTBY | เรียงตามช่วงอื่นหรือค่าที่คำนวณ และหลายลำดับ | =SORTBY(A5:F14,C5:C14,1,F5:F14,-1) |
| Data > Sort | เรียงครั้งเดียว แก้ลำดับของข้อมูลต้นทาง | Data > Sort |
| LARGE + INDEX/MATCH | จัดอันดับได้ทุกเวอร์ชัน | =LARGE($F$5:$F$14,ROWS($A$5:A5)) |
ใน Power BI ใช้อะไร
Power BI เรียงข้อมูลที่ visual ถ้าต้องการ n อันดับแรกใช้ TOPN
ไฟล์ฝึก SORTBY
9Expert-SORTBY-Practice-v1.2.xlsx
โจทย์ในชีตแบบฝึกหัด
- ข้อ 1เรียงชื่อพนักงานตามคะแนนลูกค้าจากมากไปน้อย
- ข้อ 2เรียงชื่อพนักงานตาม % ของเป้าจากมากไปน้อย
- ข้อ 3เรียงชื่อพนักงานตามยอดขายจริงจากน้อยไปมาก
- ข้อ 4ภูมิภาคของพนักงาน เรียงตามยอดขายจริงจากน้อยไปมาก
- ข้อ 5ชื่อพนักงานที่ทำ % ของเป้าได้สูงสุด
วิดีโอประกอบ
ในเว็บจริงจะฝังคลิปพร้อมตั้งเวลาเริ่มตรงหัวข้อนี้ ในต้นแบบเปิดผลค้นหาในช่องแทน
เปิดใน YouTubeแบบทดสอบ 3 ข้อ
1. SORTBY ต่างจาก SORT ตรงไหน
by_array เป็นช่วงอื่นหรือค่าที่คำนวณได้ ไม่จำเป็นต้องอยู่ในผลลัพธ์
2. =SORTBY(A5:F14,C5:C14,1,F5:F14,-1) เรียงอย่างไร
คู่แรกคือช่องทางเรียง 1 คู่ที่สองคือยอดเรียง -1
3. by_array ต้องเป็นอย่างไร
Microsoft ระบุว่า by_array ต้องสูงหนึ่งแถวหรือกว้างหนึ่งคอลัมน์ และทุก argument ต้องขนาดเท่ากัน
ไปต่อ
ต่อยอดใน Microsoft Excel Advanced: สูตรสรุปผลแบบมีเงื่อนไข สูตรสืบค้นข้อมูล สูตรใหม่ใน Microsoft 365 และการจัดการ Error (2 วัน)