Page 1 of 1

สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Fri May 27, 2022 2:11 pm
by Xcelvba
ขอสอบถามวิธี ค้นหาข้อมูลแบบเรียง ข้อมูลจากมากไปน้อย หรือ น้อยไปมาก ครับ ซึ่งที่ผมทำมาด้วย สูตร

range H4:J6 =IFERROR(INDEX(A$1:A$100,AGGREGATE(15,6,ROW($A$2:$A$100)/($A$2:$A$100=$H$2),ROWS(H$4:H4))),"")

แต่ผลลัพธ์ที่ได้คือน่าจะมาจากการหาข้อมูล (แถว)ที่เจอก่อนในความเข้าใจครับ แต่ ผมอยากให้เรียง จาก คอลัมน์ J (date) ให้เรียงค่าน้อยไปมาก / มากไปน้อย ก่อนครับ มีวิธีไหมแนะนำไหมครับ

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Fri May 27, 2022 2:39 pm
by snasui
:D ตัวอย่างสูตรตามด้านล่างครับ
  1. ที่ J4 คีย์
    =IFERROR(AGGREGATE(15,6,$C$2:$C$100/($A$2:$A$100=$H$2),ROWS(J$4:J4)),"")
    Enter > Copy ลงด้านล่าง
  2. ที่ H4 คีย์
    =IFERROR(LOOKUP(2,1/(($A$2:$A$100=$H$2)*($C$2:$C$100=$J4)),A$2:A$100),"")
    Enter > Copy ไป I4 > Copy ลงด้านล่าง

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Fri May 27, 2022 4:25 pm
by Xcelvba
snasui wrote: Fri May 27, 2022 2:39 pm :D ตัวอย่างสูตรตามด้านล่างครับ
  1. ที่ J4 คีย์
    =IFERROR(AGGREGATE(15,6,$C$2:$C$100/($A$2:$A$100=$H$2),ROWS(J$4:J4)),"")
    Enter > Copy ลงด้านล่าง
  2. ที่ H4 คีย์
    =IFERROR(LOOKUP(2,1/(($A$2:$A$100=$H$2)*($C$2:$C$100=$J4)),A$2:A$100),"")
    Enter > Copy ไป I4 > Copy ลงด้านล่าง
สอบถามเพื่มเติมครับ

IFERROR(LOOKUP(2,1/(($A$2:$A$100=$H$2)*($C$2:$C$100=$J4)),A$2:A$100),"")
ตัวคูณ (*) เปรียบเสมือน AND ใช่ไหมครับ แล้ว ทำไมใช้ Lookup ( 2, 1/............ ) 2 คือค่าคงที่ จากที่ผมศึกษา Lookup จะเป็นการหาแบบ Apoximate คือ ใกล้เคียงที่น้อยกว่า ค่าจะไม่คลาดเคลื่อนเหรอครับ
1. คูณ (*) ความหมายเหมือน AND ใช่ไหมครับ
2. ใช้ Lookup ค่าจะไม่คลาดเคลื่อนใช่ไหมครับ

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Fri May 27, 2022 4:36 pm
by snasui
Xcelvba wrote: Fri May 27, 2022 4:25 pm ตัวคูณ (*) เปรียบเสมือน AND ใช่ไหมครับ
:D ใช่ครับ
Xcelvba wrote: Fri May 27, 2022 4:25 pm ทำไมใช้ Lookup ( 2, 1/............ ) 2 คือค่าคงที่ จากที่ผมศึกษา Lookup จะเป็นการหาแบบ Apoximate คือ ใกล้เคียงที่น้อยกว่า
แปลว่าหาค่าที่น้อยกว่าหรือเท่ากับ 2 ผลลัพธ์จาก 1/... ไม่มีโอกาสเท่ากับ 2 เป็นได้แค่ 1 และ #Div/0! เท่านั้น ดูคำอธิบายเพิ่มเติมได้ที่นี่ครับ Lookup last position
Xcelvba wrote: Fri May 27, 2022 4:25 pm ใช้ Lookup ค่าจะไม่คลาดเคลื่อนใช่ไหมครับ
Lookup ลักษณะนี้จะเป็นการดึงค่าสุดท้ายที่เข้าเงื่อนไขมาแสดง หมายความว่า หากเข้าเงื่อนไขหลายค่าจะดึงค่าสุดท้ายมาใช้งาน คลาดเคลื่อนหรือไม่ขึ้นอยู่กับว่าต้องการค่าใดมาใช้งานครับ

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Fri May 27, 2022 5:08 pm
by Xcelvba
Lookup ลักษณะนี้จะเป็นการดึงค่าสุดท้ายที่เข้าเงื่อนไขมาแสดง หมายความว่า หากเข้าเงื่อนไขหลายค่าจะดึงค่าสุดท้ายมาใช้งาน คลาดเคลื่อนหรือไม่ขึ้นอยู่กับว่าต้องการค่าใดมาใช้งานครับ
ขอบคุณครับจะลองไปศึกษาเพิ่มเติมครับ ติดตรงไหนจะมาสอบถามใหม่นะครับ :D

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Sat May 28, 2022 8:19 am
by Xcelvba
Xcelvba wrote: Fri May 27, 2022 5:08 pm
Lookup ลักษณะนี้จะเป็นการดึงค่าสุดท้ายที่เข้าเงื่อนไขมาแสดง หมายความว่า หากเข้าเงื่อนไขหลายค่าจะดึงค่าสุดท้ายมาใช้งาน คลาดเคลื่อนหรือไม่ขึ้นอยู่กับว่าต้องการค่าใดมาใช้งานครับ
ขอบคุณครับจะลองไปศึกษาเพิ่มเติมครับ ติดตรงไหนจะมาสอบถามใหม่นะครับ :D
ถ้าข้อมูล เลข ไม่เรียงจากน้อยไปมาก จะใช้ lookup ไม่ได้ใช่ไหมครับ

Re: สอบถามวิธีทำให้ข้อมูลเรียงจากน้อยไปมากครับ Aggregate+small

Posted: Sat May 28, 2022 11:41 am
by snasui
Xcelvba wrote: Sat May 28, 2022 8:19 am ถ้าข้อมูล เลข ไม่เรียงจากน้อยไปมาก จะใช้ lookup ไม่ได้ใช่ไหมครับ
:D ถูกต้องหากว่าเป็นการใช้ Lookup โดยทั่วไป แต่กรณีนี้เป็นการแบบประยุกต์ ข้อมูลจะเรียงหรือไม่เรียงจึงไม่มีผล ยกเว้นจะมีข้อมูลตรงตามเงื่อนไขหลายค่าอย่างที่กล่าวแล้ว

การเรียงวันที่ใช้ Aggregate เข้ามาช่วยเรียงให้ ส่วน Lookup มีหน้าที่ดึงข้อมูลมาให้ตามวันที่นั้น ๆ หากมีวันที่เดียวกันหลายค่าจะนำค่าสุดท้ายมาแสดง เช่นนี้เป็นต้นครับ