Page 1 of 1
ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Sun Sep 11, 2022 12:58 pm
by Sathit Wongmeekaew
พอดีผมออกแบบไฟล์ Excel มาเพื่อทำแบบรายงานข้อมูลผลการเรียนให้กับผู้ปกครอง แต่ผมติดตรงที่การหาลำดับที่ของการสอบว่าใครสอบได้ลำดับที่ 1,2,3,... โดยมีเงื่อนไขว่า ใครได้เกรดเฉลี่ยสูงที่สุดก็ได้ลำดับที่ 1 แล้วก็ไล่ลงไปตามลำดับ แต่ถ้าเกรดเฉลี่ยเท่ากัน ให้ไปดูคะแนนรวมของทุกวิชา ถ้าคะแนนรวมของทุกวิชาได้มากกว่าก็จะได้ลำดับที่ดีกว่าครับ ซึ่งผมได้แนบไฟล์ที่ผมทำจำลองขึ้น แนบมาในกระทู้นี้ด้วยครับ
Re: ขอวิธีการเขียนคำสั้งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Sun Sep 11, 2022 1:21 pm
by snasui

ตัวอย่างสูตรครับ
- เซลล์ O3 คีย์สูตรสำหรับนำเกรดเฉลียบวกกับคะแนนรวมหารด้วย 10000 เพื่อใช้เป็นคอลัมน์ช่วยให้ง่ายต่อการเขียนสูตรและง่ายต่อการทำความเข้าใจสำหรับการจัดลำดับ
=L3+K3/10000
Enter > Copy ลงด้านล่างจนสุดข้อมูล
- เซลล์ M3 เขียนสูตรหาลำดับที่ต้องการ
=RANK(O3,$O$3:$O$31)
Enter > Copy ลงด้านล่าง
หรือหากต้องการเขียนเพียงสูตรเดียวโดยไม่ต้องใช้คอลัมน์ช่วย เซลล์ M3 คีย์
=SUMPRODUCT(--(L3+K3/10000<$L$3:$L$31+$K$3:$K$31/10000))+COUNTIFS(K$3:K3,K3,L$3:L3,L3)
Enter > Copy ลงด้านล่าง
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Sun Sep 11, 2022 1:51 pm
by Sathit Wongmeekaew
ขอบคุณครับผม ทีนี้ผมขอเป็นความรู้เพิ่มอีกนิด ถ้าสมมุติอยากเพิ่มเงื่อนไขอีกว่า ถ้า เกรดเฉลี่ยเท่ากัน แล้ว คะแนนรวม ก็เท่ากันอีก แล้วเพิ่มเงื่อนไขว่าคะแนนวิชาคณิตศาสตร์ได้มากว่า ให้ได้ลำดับที่ดีกว่าละครับ จะมีวิธีการอย่างไรครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Sun Sep 11, 2022 2:27 pm
by snasui

จากสูตรนี้
=L3+K3/10000 (ข้อ 1 ในโพสต์ด้านบน) ให้บวกวิชาคณิตศาสตร์หรือวิชาอื่นใดที่ต้องการเพิ่มได้ตามสะดวก เช่น
=L3+(K3+J3)/10000) เป็นต้นครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Sun Sep 11, 2022 3:35 pm
by Sathit Wongmeekaew
ขอบคุณครับผม สำหรับความรู้วันนี้
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Tue Sep 13, 2022 5:01 pm
by Sathit Wongmeekaew
พอดีผมลองทำตามสูตรท่านบอกแล้ว ที่นี้ผมลองแทนค่าให้ เกรดเฉลี่ยเท่ากัน คะแนนรวมแต่ละวิชาก็เท่ากัน แต่ลำดับที่ ทำไมมันไม่ให้เป็นลำดับที่เดียวกันครับ เช่น ได้ที่ 1, 2, 3, โดยมันยึดแถวที่อยู่สูงกว่าเป็นลำดับที่ดีกว่าครับ ซึ่งตามความเป็นจริง ต้องได้ลำดับที่ 1 เท่ากัน 3 คน แล้วคนต่อไปค่อยได้ลำดับที่ 2 ครับ และผมได้แนบไฟล์ตัวอย่างที่ผมได้ลองทำแล้วมาด้วยครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Tue Sep 13, 2022 6:45 pm
by snasui

ที่ได้เช่นนั้นเพราะไม่ได้แจ้งเงื่อนไขนี้มาตั้งแต่ต้นครับ
กรณีลำดับเดียวกันได้ค่าเดียวกันปรับสูตรเป็นด้านล่างครับ
=MATCH(L4+K4/10000,SORT(UNIQUE($L$4:$L$32+$K$4:$K$32/10000),1,-1),0)
Enter > Copy ลงด้านล่าง
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Tue Sep 13, 2022 8:17 pm
by Sathit Wongmeekaew
ผมลองคัดลอกสูตรตามที่บอกไปใช้แล้วมันบอกว่า "ฟังก์ชั่นดังกล่าวไม่ถูกต้องครับ" พอผมกดตกลงมันจะไปทึบสีเทา ๆ ตรงคำว่า SORT ครับ ตามรูปที่ผมแนบมานี้ครับ แล้วผมแก้ไม่เป็นครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Tue Sep 13, 2022 9:27 pm
by snasui

ไม่ทราบว่าใช้ Excel Version ไหน ตรงกับที่ระบุไว้ใน Profile ว่าเป็น Version 365 หรือไม่ครับ

Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 8:00 am
by Sathit Wongmeekaew
เป็นเวอร์ชั่น 2019 ครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 8:26 am
by snasui

ช่วยแก้ไข Profile ให้แสดง Version ของ Excel ให้ตรงกับที่ใช้งานจริงตาม Link นี้ด้วยครับ
viewtopic.php?p=103177#p103177
สามารถปรับ Code ที่ M4 เป็นด้านล่างครับ
=MATCH(L4+K4/10000,INDEX(AGGREGATE(14,6,($L$4:$L$32+$K$4:$K$32/10000)/(0<FREQUENCY(MATCH($L$4:$L$32+$K$4:$K$32/10000,$L$4:$L$32+$K$4:$K$32/10000,0),ROW($L$4:$L$32)-ROW($L$4)+1)),ROW($L$4:$L$32)-ROW($L$4)+1),0),0)
Enter > Copy ลงด้านล่าง
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 8:44 am
by Sathit Wongmeekaew
ได้แล้วครับ ขอบคุณมาก ๆ ครับผม พอดีผมเพิ่งจะสมัครสมาชิกใหม่ก็เลยยังไม่เข้าใจการะใช้งานเท่าไหร่นะครับ แล้วผมจะไปแก้ Profile ให้ตรงกับ Version ของ Excel นะครับ ขอให้ท่านประสบแต่ความสุขความเจริญนะครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 9:03 am
by Sathit Wongmeekaew
สอบถามอีกนิดนะครับ ถ้าผมเอาไฟล์ตัวนี้ซึ่งเป็น Excel เวอร์ชั่น 2019 แล้วเอาไปให้คุณครูท่านอื่นใช้ แต่ผมไม่รู้ว่าของคุณครูแต่ละท่านใช้ Excel เวอร์ชั่นอะไรบ้าง สมมุติว่าของคุณครูท่านอื่นใช้เวอร์ชั่นที่ต่ำกว่า 2019 จะสามารถใช้ไฟล์ตัวนี้ได้ไหมครับ
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 10:17 am
by snasui

กรุณาแก้ Profile ตามที่แจ้งไปก่อนครับ

Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 10:53 am
by Sathit Wongmeekaew
ครับผม
Re: ขอวิธีการเขียนคำสั่งหาลำดับที่แบบมีหลายเงื่อนไข ใน Excel
Posted: Wed Sep 14, 2022 11:01 am
by snasui
Sathit Wongmeekaew wrote: Wed Sep 14, 2022 9:03 am
สอบถามอีกนิดนะครับ ถ้าผมเอาไฟล์ตัวนี้ซึ่งเป็น Excel เวอร์ชั่น 2019 แล้วเอาไปให้คุณครูท่านอื่นใช้ แต่ผมไม่รู้ว่าของคุณครูแต่ละท่านใช้ Excel เวอร์ชั่นอะไรบ้าง สมมุติว่าของคุณครูท่านอื่นใช้เวอร์ชั่นที่ต่ำกว่า 2019 จะสามารถใช้ไฟล์ตัวนี้ได้ไหมครับ

สูตรดังกล่าวใช้ได้ตั้งแต่ Version 2010 เป็นต้นไปครับ