หน้าเว็บ

วันพฤหัสบดีที่ 30 กันยายน พ.ศ. 2553

เทคนิคการจัดเรียงข้อมูลภายในกลุ่มโดยมีข้อมูลหลาย ๆ กลุ่ม

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

  • บรรทัดที่ 1-5 เป็นกลุ่มที่ 1
  • บรรทัดที่ 6-10 เป็นกลุ่มที่ 2
  • บรรทัดที่ 11-15 เป็นกลุ่มที่ 3

ซึ่งข้อมูลในแต่ล่ะกลุ่มไม่ได้จัดเรียง หากเราต้องการจัดเรียงด้วยข้อมูลหลักในคอลัมน์ A สามารถทำตามภาพด้านล่างครับ

ภาพการจัดเรียงข้อมูลภายในกลุ่มโดยมีข้อมูลหลาย ๆ กลุ่ม

SortInGroup

โดยมีวิธีการดังนี้ครับ

  1. ที่ D2 คีย์สูตร
    =IF(A2="prod",MAX(D$1:D1)+1,INT((ROWS(D$1:D2)-1)/5)*100+SUMPRODUCT(--(A2>$A$1:$A$20))+COUNTIF($A$1:A2,A2))
    Enter > Copy ลงด้านล่าง
  2. ทำการเรียงข้อมูลตามคอลัมน์ D

Note:

  1. ที่ต้องหารด้วย 5 เนื่องจากแต่ละกลุ่มมี 5 บรรทัด
  2. ที่ต้องคูณด้วย 100 ก็เพื่อสร้างผลต่างระหว่างชุด สามารถเลือกคูณด้วยค่าใด ๆ เพื่อสร้างผลต่างระหว่างชุดตามต้องการ
  3. SUMPRODUCT(--(A2>$A$1:$A$20))+COUNTIF($A$1:A2,A2) เป็นการให้ลำดับข้อมูลที่เหมือนกันให้แตกต่างกันภายในชุด

2 ความคิดเห็น:

Unknown กล่าวว่า...

ทำไมผลของการเรียงข้อมูล บรรทัดสุดท้ายที่ช่อง d17 เป็นค่า 304

snasui กล่าวว่า...

ที่เป็นเช่นนั้นเพราะข้อมูลไม่ได้มีแค่ D17 ครับ มีมากกว่านั้น และเลข 304 จะอยู่ด้านล่าง หลังจากจัดเรียงแล้ว สังเกตว่า A17 จะกลายมาเป็น a แทน d