Page 1 of 1
สอบถามเรื่องการหา 10 อันดับแรก
Posted: Fri Feb 04, 2022 3:50 pm
by atomx999
ตามไฟล์ตัวอย่างผมลองทำเพื่อหายอดขายจำนวน 10 อันดับแรกมา แต่เจอปัญหารายการ B, C มันแสดงรหัสผู้ขายผิด ไม่ทราบว่าควรแก้ไขอย่างไรดีครับ
ขอบคุณครับ
Re: สอบถามเรื่องการหา 10 อันดับแรก
Posted: Fri Feb 04, 2022 5:20 pm
by norkaz
...
F8:G17
=HLOOKUP(F$7,$A$1:$D$112,ROUND(MOD(INDEX(AGGREGATE(14,6,INDEX($B$2:$D$112,0,MATCH($G$7,$B$1:$D$1,0))+ROW($B$2:$B$112)/1000000,ROW($B$1:$B$112)),ROWS(F$7:F7)),1)*1000000,0),0)
I8:J17
=HLOOKUP(I$7,$A$1:$D$112,ROUND(MOD(INDEX(AGGREGATE(14,6,INDEX($B$2:$D$112,0,MATCH($J$7,$B$1:$D$1,0))+ROW($B$2:$B$112)/1000000,ROW($B$1:$B$112)),ROWS(I$7:I7)),1)*1000000,0),0)
L8:M17
=HLOOKUP(L$7,$A$1:$D$112,ROUND(MOD(INDEX(AGGREGATE(14,6,INDEX($B$2:$D$112,0,MATCH($M$7,$B$1:$D$1,0))+ROW($B$2:$B$112)/1000000,ROW($B$1:$B$112)),ROWS(L$7:L7)),1)*1000000,0),0)
Norkaz
Re: สอบถามเรื่องการหา 10 อันดับแรก
Posted: Fri Feb 04, 2022 5:32 pm
by snasui

ตัวอย่างสูตรอีกรูปแบบตามด้านล่างครับ
- ที่ G8 คีย์
=LARGE(B$2:B$113,ROWS(G$8:G8))
Enter > Copy ลงด้านล่าง
- ที่ F8 คีย์
=INDEX($A:$A,AGGREGATE(14,6,ROW($A$2:$A$113)/($B$2:$B$113=G8),COUNTIFS(G$8:G8,G8)))
Enter > Copy ลงด้านล่าง
- ที่ J8 คีย์
=LARGE($C$2:$C$113,ROWS(J$8:J8))
Enter > Copy ลงด้านล่าง
- ที่ I8 คีย์
=INDEX($A:$A,AGGREGATE(14,6,ROW($A$2:$A$113)/($C$2:$C$113=J8),COUNTIFS(J$8:J8,J8)))
Enter > Copy ลงด้านล่าง
- ที่ M8 คีย์
=LARGE($D$2:$D$113,ROWS(M$8:M8))
Enter > Copy ลงด้านล่าง
- ที่ L8 คีย์
=INDEX($A:$A,AGGREGATE(14,6,ROW($A$2:$A$113)/($D$2:$D$113=M8),COUNTIFS(M$8:M8,M8)))
Enter > Copy ลงด้านล่าง
ไม่ควรสร้าง Array โดยคลุมพื้นที่และสร้างสูตรตามด้วย Ctrl+Shift+Enter หากพื้นที่ผลลัพธ์ขนาดใหญ่จะยุ่งยากลำบากในการแก้ไขครับ
Re: สอบถามเรื่องการหา 10 อันดับแรก
Posted: Sat Feb 05, 2022 8:13 am
by atomx999
สอบถามครับ
แล้วถ้าสมมุติว่าเอาแค่ 5 อันดับแรก
รายการ Product B
อันดับที่ 4 ควรเป็น SL45009
อันดับที่ 5 ควรเป็น SL45014
มันต้องทำการ Sort เองอีกทีใช่ไหมครับ
Re: สอบถามเรื่องการหา 10 อันดับแรก
Posted: Sat Feb 05, 2022 8:56 am
by snasui

ตัวอย่างการปรับสูตรที่ I24 ครับ
=INDEX(SORT(FILTER($A$2:$A$113,$C$2:$C$113=J24),1),COUNTIFS(J$24:J24,J24))
Re: สอบถามเรื่องการหา 10 อันดับแรก
Posted: Sat Feb 05, 2022 1:10 pm
by atomx999
ขอบคุณ คุณ snasui และคุณ norkaz มากๆ เลยครับ
จะนำไปศึกษาและปรับใช้ครับ ^^