Page 1 of 2

เรียงลำดับอัตโนมัติ

Posted: Fri Mar 11, 2016 10:24 am
by changphuak
อยากจะจัดเรียงลำดับจากมากไปหาน้อยแบบอัตโนมัติแบบกรอกข้อมูลที่ colum d
ขอคุณมากครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Fri Mar 11, 2016 2:24 pm
by tejasid
ตัวอย่างครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Fri Mar 11, 2016 2:49 pm
by changphuak
เพิ่มเติมครับ
คือถ้ามีการเปลี่ยนแปลงตัวเลขแล้วขึ้นจัดอันดับแบบอัตโนมัตินะครับโดยที่ไม่กดจัดอันดับใหม่นะครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Fri Mar 11, 2016 3:22 pm
by logic
ถ้าเป็นการเรียงอัตโนมัติในที่เดิมก็ต้องใช้การเขียนโปรแกรมด้วย vba เข้ามาช่วย ต้องเขียนมาเองก่อนตามกฎด้านบนครับ :)

Re: เรียงลำดับอัตโนมัติ

Posted: Fri Mar 11, 2016 3:46 pm
by changphuak
ครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 9:24 am
by changphuak
ขอถามเพิ่มเติมครับ ที่ columF ,columG
เกิดช่องว่างที่ไม่มีค่าทำอย่างไรให้เรียงให้ต่อเนื่องและเกิดข้อผิดพลาดตามที่ปรากฎดังที่เห็นครับ
ขอบคุณมากครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 11:22 am
by XDoll
changphuak wrote:ขอถามเพิ่มเติมครับ ที่ columF ,columG
เกิดช่องว่างที่ไม่มีค่าทำอย่างไรให้เรียงให้ต่อเนื่องและเกิดข้อผิดพลาดตามที่ปรากฎดังที่เห็นครับ
ขอบคุณมากครับ
:D เท่าที่ดูพบข้อผิดพลาดดังนี้ครับ ที่ F5
1. =IF($A$5:$A$22="","",LARGE($A$5:$A$22,$E5)) ต้องเป็นสูตร Array ให้กด Ctrl+Shift ค้างไว้กด Enter จะปรากฎ{} ครอบสูตรไว้ครับ คอปปี้ลงล่าง
2. ช่วงข้อมูลไม่ถูกต้องครับ ให้แก้ตรง =IF($A$5:$A$22="","",LARGE($A$5:$A$22,$E5)) เป็น =IF($A$5:$A$34="","",LARGE($A$5:$A$34,$E5))

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 11:41 am
by XDoll
:D ขอเพิ่มเติมส่วนของข้อผิดพลาดที่เกิดในสูตร
F5 =IFERROR(IF($A$5:$A$34="","",LARGE($A$5:$A$22,$E5)),"") Ctrl+Shift ค้างไว้กด Enter คอปปี้ลงมา
G5 =IFERROR(VLOOKUP($F5,$A$5:$D$34,4,FALSE),"") Ctrl+Shift ค้างไว้กด Enter คอปปี้ลงมา

สีแดงคือส่วนที่เพิ่มเข้าไปหากเกิด error ให้ใส่ค่าว่างครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 1:00 pm
by changphuak
ขอบคุณครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 1:40 pm
by XDoll
XDoll wrote::D ขอเพิ่มเติมส่วนของข้อผิดพลาดที่เกิดในสูตร
G5 =IFERROR(VLOOKUP($F5,$A$5:$D$34,4,FALSE),"") Ctrl+Shift ค้างไว้กด Enter คอปปี้ลงมา
ขอแก้ไขส่วนที่ผมแจ้งผิดครับ
ส่วนที่ขีดเส้นใต้ไม่ต้อง Ctrl+Shift+Enter ครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 5:43 pm
by changphuak
ขอถามเพิ่มเติมครับ คืออยากให้ชื่อร้านค้าที่มีค่าเป็นศูนย์หรือว่างมาแสดงที่COLUM Gด้วยครับ
จอบคุณมากครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 5:44 pm
by changphuak
แก้คำผิดครับ
ขอบคุณครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 6:38 pm
by snasui
:D ตัวอย่างการปรับสูตรครับ
  1. F5 คีย์สูตร
    =IFERROR(LARGE(IF($A$5:$A$100="",0,$A$5:$A$100),$E5),"")
    Ctrl+Shift+Enter
  2. G5 คีย์สูตร
    =IF(F5<>"",INDEX($B$5:$B$100&"",SMALL(IF($A$5:$A$100=F5,ROW($A$5:$A$100)-ROW($A$5)+1),COUNTIF(F$5:F5,F5))),"")
    Ctrl+Shift+Enter

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 12, 2016 8:02 pm
by changphuak
ขอบคุณมากๆครับอาจารย์

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 19, 2016 8:17 pm
by changphuak
ขอถามเพิ่มเติมครับ
ที่ b4 คือค่าต่ำสุดของ 58 ที่ g4:g15 ให้แสดงชื่อที่ c4
ขอบคุณครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 19, 2016 8:23 pm
by snasui
:D ตรวจสอบว่าแนบไฟล์มาถูกต้องหรือไม่ หากถูกต้องแล้วช่วยอธิบายว่าชีตใด ต้องการคำตอบเป็นเท่าใด ด้วยเงื่อนไขใด จะได้สะดวกต่อการทำความเข้าใจและเข้าถึงปัญหาได้โดยไวครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 19, 2016 9:30 pm
by changphuak
ขอโทษครับแนบไฟล์ผิดครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sat Mar 19, 2016 9:51 pm
by snasui
:D ตัวอย่างสูตรครับ

เซลล์ C4 คีย์

=INDEX($F$4:$F$15,MATCH(1,IF($G$4:$G$15=58,IF($H$4:$H$15=B4,1)),0))

Ctrl+Shift+Enter > Copy ลงด้านล่าง

สูตรนี้เป็นการ Match ตามเงื่อนไข โดยดูว่า G4:G15 มีค่าเท่ากับ 58 และ H4:H15 มีค่าเท่ากับ B4 ไม่เกี่ยวกับค่าต่ำสุดหรือไม่ต่ำสุด การอธิบายถึงค่าต่ำสุดจะทำให้เกิดการตีความโจทย์ไม่ถูกต้องแต่หากกล่าวถึงค่าตำสุดเป็นลำดับที่เท่านั้นเท่านี้จึงจะใชได้ครับ

Re: เรียงลำดับอัตโนมัติ

Posted: Sun Mar 20, 2016 7:08 am
by changphuak
ขอบคุณมากครับ :cp: :cp: :cp: :cp: :cp:
ถามเพิ่มเติมครับ ที่ B4 ต้องการหาค่า SMALL ของ58 มาแสดงแบบอย่างที่ปรากฎครับ
ขอบคุณมากๆครับ :thup: :thup: :thup: :thup: :thup:

Re: เรียงลำดับอัตโนมัติ

Posted: Sun Mar 20, 2016 7:37 am
by snasui
:D ตัวอย่างสูตรตามด้านล่างครับ

=SMALL(IF($G$4:$G$15=58,$H$4:$H$15),A4)

Ctrl+Shift+Enter > Copy ลงด้านล่าง