Page 1 of 1

รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sat Oct 18, 2014 12:34 pm
by kaungkamu
ตาราง1 ขอความอนุเคราะห์ผู้รู้ คืออยากได้สูตร ตาราง1 ให้Column C จัดลำดับอัตโนมัติถ้าAchievement(คะแนน)เปลี่ยน ถ้าสูงได้เป็นอันดับ 1 โดยเลียง Achievement มาก ไปหาน้อย
-ถ้าจะให้เด่นให้ใส่สีเด่น ๆ หรือสัญลักณ์ เด่น ๆให้เตือนสำหรับคนที่ อยู่ 3 ลำดับท้าย :D


ตาราง2 อยากให้Column C จัดลำดับอัตโนมัติถ้าAchievementเปลี่ยน ให้นำข้อมูลตาราง 1 มาแสดง ถ้าได้ลำดับสุดท้าย 3 ลำดับ โดยเลียง Achievement น้อย ไปหามาก

ตาม File แนบครับ

ขอบพระคุณอย่างสูงครับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sat Oct 18, 2014 1:14 pm
by snasui
:D หากได้ Achievement เท่ากันจะจัดลำดับอย่างไร จะให้ลำดับเท่ากันหรือไม่ครับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sat Oct 18, 2014 5:59 pm
by kaungkamu
ให้เท่ากันครบอาจารย์

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sat Oct 18, 2014 8:01 pm
by snasui
:D ลองตามนี้ครับ
  1. เซลล์ C3 คีย์
    =MATCH(B3,LARGE($B$3:$B$9,ROW(INDIRECT("1:"&COUNT($B$3:$B$9)))),0)
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  2. C15 คีย์
    =LARGE($C$3:$C$9,ROWS(C$15:C15))
    Enter > Copy ลงด้านล่าง
  3. A15 คีย์
    =INDEX(A$3:A$9,MATCH($C15,$C$3:$C$9,0))
    Enter > Copy ไป B5 และ Copy ลงด้านล่าง

!
Note: Ctrl+Shift+Enter หมายถึง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sat Oct 18, 2014 10:59 pm
by kaungkamu
:thup: ขอบคุณครับอาจารย์ แต่ตาราง 1 ยังไม่เลียงลำดับครับ มันเลียงตาม2,3,1,5,4,7,6 ตามลำดับ (ผมแนบ File ให้ดูไม่ได้ครับ) รบกวนอาจารย์ด้วยครับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sun Oct 19, 2014 6:02 am
by snasui
:D การเรียงข้อมูลด้วยสูตรจะต้องเรียงในพื้นที่อื่น ไม่สามารถเรียงในพื้่นที่เดิมได้ครับ หากต้องการเรียงในพื้นที่เดิมต้องใช้ VBA เข้ามาช่วยในการเรียงแบบอัตโนมัติ ซึ่งต้องเขียนมาก่อนตามกฎการใช้บอร์ดข้อ 5 ด้านบนครับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sun Oct 19, 2014 11:30 am
by kaungkamu
ต้องเรียนว่า VBA ไม่ได้เลยครับอาจารย์ ก็ก็ลองไปหา code ของอาจารย์มาศึกษาดู

Sub NewArrange()
Dim r As Range, c As Range
Dim iCount As Integer
Dim wsh As Worksheet
Set wsh = ActiveSheet
wsh.Range("A:A").ClearContents
Set r = wsh.UsedRange
For Each c In r
If c <> "" Then
iCount = iCount + 1
Cells(iCount, 1) = c
End If
Next c
wsh.Range("A:A").Sort Key1:=Range("A1"), _
Order1:=xlAscending, Orientation:=xlTopToBottom
End Sub

ลองทดสอบดูเป็นการเรียงลำดบได้จริงโดยเช็คจากคอลั่มซ้ายไปขวา และให้เรียงไว้ที่ คอลั่ม A พยายามแก้ให้ตรงกับที่ผมต้องการแล้วครัับแต่ Error รบกวนอาจารย์ช่วยไกด์ด้วยครัับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Sun Oct 19, 2014 11:42 am
by snasui
:D การวาง Code VBA ให้ดูตัวอยางจาก Link นี้ครับ เพื่อจะได้สะดวกในการอ่าน Copy ไปทดสอบ :arrow: viewtopic.php?style=3&f=3&t=1187

สำหรับการเรียงในพื้นที่เดิม ให้บันทึก Macro การจัดเรียงแล้วปรับ Code ที่ได้มาใช้งานครับ

Re: รบกวนอาจารย์ครับผมอยากได้สูตรจัดลำดับใน Excel

Posted: Thu Oct 23, 2014 9:06 am
by kaungkamu
ขอบคุณครับอาจารย์