:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
amlu
Member
Member
Posts: 10
Joined: Sun Jun 19, 2016 12:50 am

Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#1

Post by amlu »

เรียน อาจารย์

รบกวนสอบถาม เกี่ยวกับการเรียงอันดับข้อมูลในช่องสามเกมส์สูงสุดจากมากไปน้อย โดยคะแนนที่จะนำมาเรียงนั้นต้องอยู่ภายใต้เงื่อนไขที่ว่า ช่องเกมส์จะต้องมีค่ามากกว่าเท่ากับ 10 ค่ะ สำหรับผลลัพธ์ที่ต้องการคือได้รายละเอียดของผู้ทำคะแนนสูงสุดจากมากไปน้อย 10 อันดับ และทุกคนที่ติดอันดับต้องมีช่องเกมส์มากกว่าเท่ากับ 10 ขึ้นไปค่ะ และหากมีคะแนนซ้ำกันให้เรียงคะแนนซ้ำดังกล่าวเป็นคนละอันดับ เช่น อันดับ 3 และ 4 คะแนนเท่ากัน เป็นต้นค่ะ

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

จึงต้องขอรบกวนอาจารย์และผู้รู้ในบอร์ดนี้ด้วยค่ะ ขอบคุณมากค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#2

Post by snasui »

:D ตัวอย่างสูตรครับ

ที่ชีท F เซลล์ I2 คีย์

=IF(G2<10,"",SUMPRODUCT(--(H2<$H$2:$H$11),--($G$2:$G$11>=10))+COUNTIFS(H$2:H2,H2,G$2:G2,">=10"))

Enter > Copy ลงด้านล่าง > นำค่าในคอลัมน์ I ที่ได้นี้ไปใช้ตามต้องการ
amlu
Member
Member
Posts: 10
Joined: Sun Jun 19, 2016 12:50 am

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#3

Post by amlu »

เรียน อาจารย์

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

แต่เนื่องจากจะต้องนำคะแนนซึ่งเรียงลำดับ ไปใช่งานต่อในชีท Top10 ซึ่งต้องการดึงข้อมูล ชื่อ-นามสกุล ทีม ชื่อทีม และคะแนน โดยเรียงลำดับ 10 อันดับผู้ได้คะแนนสูงสุด ทั้งนี้ได้ลองนำสูตร Index ร่วมกับ Large / Small เพื่อดึงข้อมูลกลับมา แต่ไม่สำเร็จ จึงอยากขอคำแนะนำในการดึงข้อมูลและเรียงให้ข้อมูลอยู่ในชีท Top10 ดังกล่าวเพิ่มเติมค่ะ

ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#4

Post by snasui »

:D แนบไฟล์ที่ได้ลองทำตามสูตรนั้นมาแล้ว พร้อมทั้งชี้ให้เห็นว่าผิดพลาดอย่างไร ค่าที่ถูกเป็นอย่างไร คิดอย่างไรจึงได้ค่าเท่านั้น จะได้ช่วยตอบต่อไปได้

การจะนำข้อมูลไปแสดงที่ใดนั้นไม่ใช่ปัญหา จะนำไปแสดงข้ามไฟล์ ข้ามเครื่องก็ย่อมได้ ขอให้ได้คำตอบเบื้องต้นก่อนครับ
amlu
Member
Member
Posts: 10
Joined: Sun Jun 19, 2016 12:50 am

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#5

Post by amlu »

ค่าที่ถูกคือค่าในชีท Top10 ค่ะ ซึ่งได้ใช้ Index มาดึงข้อมูลจากสูตรที่อาจารย์เขียนให้

แต่เมื่อลองจะนำสูตรที่อาจารย์เขียนให้ มาใส่เข้าไปใน index เพื่อไม่ต้องเพิ่มคอลัมน์ในชีท F แต่สามารถให้ข้อมูลในชีท Top10 ออกมาได้อย่างที่ต้องการ กลับทำแล้วไม่ได้ค่ะ จึงต้องรบกวนอาจารย์ให้ช่วยชี้แนะด้วยค่ะ

ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
logic
Gold
Gold
Posts: 1511
Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#6

Post by logic »

ลองดูว่าใช่ที่ต้องการไหมครับ

ชีต Top 10
G4 =LARGE(IF(F!$G$2:$G$11>=10,F!$H$2:$H$11),ROWS(G$4:G4))
C4 =INDEX(F!B$2:B$11,SMALL(IF(F!$H$2:$H$11=$G4,ROW(F!$A$2:$A$11)-ROW(F!$A$2)+1),COUNTIF($G$4:$G4,$G4)))

ทั้งสองเซลล์กดแป้นแบบอาร์เรย์ (ctrl+shift+enter) แล้วค่อยคัดลอก G4 ไปยังเซลล์อื่น
amlu
Member
Member
Posts: 10
Joined: Sun Jun 19, 2016 12:50 am

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#7

Post by amlu »

ใช่ตามที่ต้องการเลยค่ะ

แต่มีคำถามเพิ่มเติมที่ยังสงสัยอยู่นิดหน่อยค่ะ
1. ที่เซลล์ C4 ทำไมถึงต้องเป็น ROW(F!$A$2:$A$11)-ROW(F!$A$2)+1)
2. การใส่ Countif แทนลำดับที่ที่ต้องการให้ฟังก์ชั่น Small ดึงมา เพื่อทำให้ออกทุกค่า รวมไปถึงค่าซ้ำใช่ไหมคะ

ขอบคุณมากนะคะอาจารย์
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#8

Post by snasui »

amlu wrote:1. ที่เซลล์ C4 ทำไมถึงต้องเป็น ROW(F!$A$2:$A$11)-ROW(F!$A$2)+1)
:D ดูคำอธิบายอย่างละเอียดที่ Link นี้ครับ viewtopic.php?p=17983#p17983
amlu wrote:2. การใส่ Countif แทนลำดับที่ที่ต้องการให้ฟังก์ชั่น Small ดึงมา เพื่อทำให้ออกทุกค่า รวมไปถึงค่าซ้ำใช่ไหมคะ
การใส่ Countif เพื่อให้แสดงรายการค่าที่ซ้ำกันเป็นลำดับไปได้ทุกตัว ไม่ใช่นำเฉพาะตัวที่พบตัวแรกมาแสดง

นั่นคือ พบค่าที่ซ้ำกันตัวแรกคือ Small ตัวที่ 1, พบตัวที่ 2 คือ Small ตัวที่ 2 เช่นนี้ครับ
amlu
Member
Member
Posts: 10
Joined: Sun Jun 19, 2016 12:50 am

Re: Rank อันดับข้อมูลจากมากไปน้อย โดยเรียงเฉพาะข้อมูลที่เข้าเงื่อนไข

#9

Post by amlu »

ขอบคุณสำหรับคำอธิบายนะคะ :)
Post Reply