Page 1 of 1

สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 7:06 pm
by primeval
อยากได้สูตร Excel ที่สามารถดึงค่า ชื่อได้ โดยเงื่อนไข หากพบว่า Sheet 1 ช่อง A1 ชื่อคุณกมลวรรณ แล้วใน Sheet สรุปการประเมินคะแนน ให้ก็มีข้อมูลของคุณกมลวรรณ จากช่องชื่อวิทยากร ให้ทำการดึงข้อมูลออกมาจาก Sheet สรุปการประเมินคะแนน สูงสุด 4 ข้อมูล หากมีข้อมูลไม่ถึง 4 ครั้ง ให้ดึงข้อมูลออกมาเท่าที่มีแต่สูงสุดไม่เกิน 4 ข้อมูล โดยเรียงจากวันที่ล่าสุดไปหาวันที่เก่าสุด แล้วทำการจัดเรียงใหม่ ให้เหมือนใน Sheet 1 ครับ
ระบบประเมินความพึงพอใจ V2.0.xlsm
ขอบคุณครับ

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 7:36 pm
by snasui
:D ตัวอย่างสูตรตามด้านล่างครับ
  1. ที่ B3 คีย์
    =IFERROR(SMALL(IF(Table4[ชื่อ
    วิทยากร]=$A$1,Table4[วันที่
    ทำแบบสอบถาม]),ROWS(B$3:B3)),"")

    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  2. ที่ A3 คีย์
    =IF([@[วันที่
    ทำแบบสอบถาม]]="","",LOOKUP(2,1/((Table4[ชื่อ
    วิทยากร]=$A$1)*(Table4[วันที่
    ทำแบบสอบถาม]=[@[วันที่
    ทำแบบสอบถาม]])),Table4[ชื่อหลักสูตร]))

    Enter > Copy ลงด้านล่าง > คัดลอกไปใช้กับคอลัมน์อื่น ๆ โดยเปลี่ยนเฉพาะช่วงที่ระบายสี

!
Note: Ctrl+Shift+Enter
เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น
    Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน
    จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)}
    ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น
    ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 8:47 pm
by primeval
เรียนสอบถามเพิ่มเติมครับ
คุณกมลวรรณ ถูกดึงออกมา 5 ค่า เรากำหนดให้ Max สูงสุด 4 ได้ไหมครับ

คุณ คุณเกษม ดึงออกมา 1 ค่า 11/07/2018 ส่วนอีกค่าค่านึง ไม่ได้มีการดึงออกมาครับ 18/06/2016 ถ้าต้องการระบุหากพบชื่อนี้ ให้ดึงออกมาสูง 4 ข้อมูล หากไม่ถึง 4 ให้ดึงออกมาเท่าที่มี โดยหากพบว่าวันที่ ไม่ได้ใกล้เคียงกับปัจจุบัน ก็ให้ดึงออกมาด้วย จนครบ 4 หรือเท่าที่มีครับ

ระบบประเมินความพึงพอใจ V2.0.xlsm
ชอบคุณครับ

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 9:49 pm
by snasui
:D ปรับสูตรที่ B4 เป็นด้านล่างครับ

=IF(ROWS(B$3:B3)>4,"",IFERROR(SMALL(IF(Table4[ชื่อ
วิทยากร]=$A$1,Table4[วันที่
ทำแบบสอบถาม]),ROWS(B$3:B3)),""))

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 10:20 pm
by primeval
ลองปรับดูแล้วครับ เหมือนจะมีปัญหาชื่อเพิ่มที่หลังแล้วข้อมูลไม่ดึงอย่างเช่น คุณภัทรพงษ์ครับ ข้อมูล 3 แต่ออกมาแค่ 2 ครับ
=IF(ROWS(B$2:B2)>4,"",IFERROR(SMALL(IF(Table4[ชื่อ
วิทยากร]=$A$1,Table4[วันที่
ทำแบบสอบถาม]),ROWS(B$2:B3)),""))
ระบบประเมินความพึงพอใจ V2.0.xlsm

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 10:26 pm
by snasui
:D เซลล์ B3 อ้างอิงตำแหน่งผิด แก้ไขให้แล้วในโพสต์ #2 และ #4 ด้านบนครับ :roll:

Re: สอบถามสูตรการดึงชื่อ ที่มีรายการซ้ำ แล้วจัดเรียงตามเงื่อนไข

Posted: Wed Jul 11, 2018 10:49 pm
by primeval
ขอบคุณครับ