Page 1 of 1

ต้องการดึงข้อมูลที่ต้องการมาใส่ใน form

Posted: Tue Oct 15, 2019 4:49 pm
by liveday
เรียนอาจารย์ทุกท่านครับ

ผมต้องการดึงข้อมูล จาก Sheet(data A2:W) มาที่ Sheet (Form) ตั้งแต่ A40 เป็นต้นไป แต่ติดที่ข้อมูล data จะเป็นข้อมูลคนละแถว
จะต้องใช้สูตรอย่างไรครับ

Re: ต้องการดึงข้อมูลที่ต้องการมาใส่ใน form

Posted: Tue Oct 15, 2019 8:21 pm
by snasui
:D ตัวอย่างสูตรครับ
  1. V40 คีย์
    =IFERROR(INDEX(data!$J$2:$J$7,AGGREGATE(15,6,(ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1)/(data!$D$2:$D$7=$AX$8),COUNTIF($H$40:$H41,"MODEL"))),"")
    Enter > ปรับใช้กับค่าในบรรทัดล่างโดยเปลี่ยนเฉพาะที่ระบายสี
  2. AP50 คีย์
    =IFERROR(INDEX(data!$P$2:$P$7,AGGREGATE(15,6,(ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1)/(data!$D$2:$D$7=$AX$8),COUNTIF($H$40:$H41,"MODEL"))),"")
    Enter > Copy ไปใช้กับบรรทัดล่างที่เกี่ยวข้อง

Re: ต้องการดึงข้อมูลที่ต้องการมาใส่ใน form

Posted: Wed Oct 16, 2019 10:51 am
by liveday
snasui wrote: Tue Oct 15, 2019 8:21 pm :D ตัวอย่างสูตรครับ
  1. V40 คีย์
    =IFERROR(INDEX(data!$J$2:$J$7,AGGREGATE(15,6,(ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1)/(data!$D$2:$D$7=$AX$8),COUNTIF($H$40:$H41,"MODEL"))),"")
    Enter > ปรับใช้กับค่าในบรรทัดล่างโดยเปลี่ยนเฉพาะที่ระบายสี
  2. AP50 คีย์
    =IFERROR(INDEX(data!$P$2:$P$7,AGGREGATE(15,6,(ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1)/(data!$D$2:$D$7=$AX$8),COUNTIF($H$40:$H41,"MODEL"))),"")
    Enter > Copy ไปใช้กับบรรทัดล่างที่เกี่ยวข้อง
ผมได้ทดลองทำเเล้วเเต่ข้อมูลไม่ขึ้นครับ ไม่แน่ใจว่าผิดตรงไหนหรือเปล่า และมีจุดที่สงสัยด้วยครับไม่แน่ใจว่าเพราะจุดนี้หรือเปล่า
=IFERROR(INDEX(data!$J$2:$J$7,AGGREGATE(15,6,(ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1)/(data!$D$2:$D$7=$AX$8),COUNTIF($H$40,"MODEL"))),"")
ในส่วนที่ไฮไลท์ผมลองสูตรของอาจารย์แล้วก็ไม่ขึ้น พอปรับมาแบบนี้ก็ยังไม่ขึ้นข้อมูลเหมือนกันครับ

Re: ต้องการดึงข้อมูลที่ต้องการมาใส่ใน form

Posted: Wed Oct 16, 2019 7:41 pm
by snasui
:D ที่ปรับมาไม่ถูกต้องครับ ไม่ทราบว่าใช้ Excel Version ไหนครับ :?:

กรณีเป็น Version 2007 จะไม่มีฟังก์ชั่น Aggregate ใช้ครับ

ตัวอย่างการปรับสูตรกรณีเป็น Excel 2007

ยกเลิกการ Merge Cell V40 จากนั้นคีย์สูตร

=IFERROR(INDEX(data!$J$2:$J$7,SMALL(IF(data!$D$2:$D$7=$AX$8,ROW(data!$J$2:$J$7)-ROW(data!$J$2)+1),COUNTIF($H$40:H41,"MODEL"))),"")

Ctrl+Shift+Enter

Re: ต้องการดึงข้อมูลที่ต้องการมาใส่ใน form

Posted: Wed Oct 16, 2019 9:23 pm
by liveday
ได้ตามต้องการครับ ขอบคุณครับ