Page 1 of 1

การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Wed Apr 03, 2013 7:11 am
by Dhk
ต้องการดึงข้อมูลจาก Sheet หนึ่งไปอีก Sheet หนึ่ง โดยข้อมูลที่ดึงไปนั้น ถ้าข้อมูลที่มี Code ซ้ำกันก็ให้ดึงข้อมูลของ Code ที่มีวันที่ล่าสุด ครับ

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Wed Apr 03, 2013 11:41 am
by snasui
:D ลองตามนี้ครับ

ที่ชีท Show
  1. A2 คีย์
    =LOOKUP(CHAR(255),CHOOSE({1,2},"",INDEX(Data!$A$2:$A$13,SMALL(IF(FREQUENCY(MATCH(Data!$A$2:$A$13,Data!$A$2:$A$13,0),ROW(Data!$A$2:$A$13)-ROW(Data!$A$2)+1),ROW(Data!$A$2:$A$13)-ROW(Data!$A$2)+1),ROWS(A$2:A2)))))
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  2. B2 คีย์
    =IF($A2<>"",LOOKUP(2,1/(Data!$A$2:$A$13=$A2),Data!B$2:B$13),"")
    Enter > Copy ไปด้านขวาและลงด้านล่าง

!
Note: Ctrl+Shift+Enter หมายถึงเมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 7:35 am
by Dhk
ขอบคุณครับ

Re: การดึงข้อมูลพร้อมจัดเลียงแบบ Dynamic

Posted: Thu Apr 04, 2013 7:31 pm
by วังวู ช่ง
เรียน ท่านอาจารย์ และสมาชิกทุกท่านครับ ก่อนอื่นต้องขอโทษเจ้าของกระทู้ครับ
สุดยอดเลียครับ ผมทำงานข้อมูลเหมือนนี้พอดีครับ แต่ผมต้องการดึงออกมาให้ครบครับ แต่ให้จัดเรียงแต่น้อยหาใหย่ทั้ง CODE, MFG Date และ Thru Date แบบ Dynamic ครับ จะใช้อย่างไลครับ

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 7:37 pm
by snasui
:D ควรทำตัวอย่างแนบมาและแสดงให้เห็นว่าต้องการผลลัพธ์เป็นอย่างไร จะได้เข้าใจตรงกันครับ

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 8:23 pm
by วังวู ช่ง
snasui wrote::D ควรทำตัวอย่างแนบมาและแสดงให้เห็นว่าต้องการผลลัพธ์เป็นอย่างไร จะได้เข้าใจตรงกันครับ
ขอโทษครับ ไฟล์เป็นแบบนี้ครับ

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 8:39 pm
by snasui
:D ลองตามนี้ครับ
  1. เซลล์ G2 คีย์
    =TEXT(SMALL(SUBSTITUTE($A$2:$A$13,"-","")+0,ROWS(G$2:G2)),"00-00-00000")
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  2. เซลล์ H2 คีย์
    =INDEX(B$2:B$13,SMALL(IF($A$2:$A$13=$G2,ROW($A$2:$A$13)-ROW($A$2)+1),COUNTIF($G$2:$G2,$G2)))
    Enter > Copy ไป I2 และ Copy ลงด้านล่าง

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 8:58 pm
by วังวู ช่ง
snasui wrote::D ลองตามนี้ครับ
  1. เซลล์ G2 คีย์
    =TEXT(SMALL(SUBSTITUTE($A$2:$A$13,"-","")+0,ROWS(G$2:G2)),"00-00-00000")
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  2. เซลล์ H2 คีย์
    =INDEX(B$2:B$13,SMALL(IF($A$2:$A$13=$G2,ROW($A$2:$A$13)-ROW($A$2)+1),COUNTIF($G$2:$G2,$G2)))
    Enter > Copy ไป I2 และ Copy ลงด้านล่าง
ผนออกมาเป็นแบบนี้ครับ
01-88-00001 3/1/2011 3/1/2012
01-88-00001 #NUM! #NUM!
01-88-00001 #NUM! #NUM!
01-88-00002 3/1/2011 3/1/2012
01-88-00003 10/1/2012 10/1/2013
02-88-00001 15/1/2013 15/1/2014
02-88-00002 3/1/2011 3/1/2012
02-88-00002 #NUM! #NUM!
02-88-00003 15/1/2013 15/1/2014
03-88-00001 5/1/2012 5/1/2013
03-88-00002 20/1/2013 20/1/2014
03-88-00003 7/1/2013 7/1/2014

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 9:00 pm
by snasui
:o ข้อ 2 ก็ต้อง Ctrl+Shift+Enter เช่นกัน ผมคีย์ตกไปครับ

Re: การดึงข้อมูลที่หากซ้ำกันให้ดึงเฉพาะข้อมูลล่าสุด

Posted: Thu Apr 04, 2013 9:23 pm
by วังวู ช่ง
snasui wrote::o ข้อ 2 ก็ต้อง Ctrl+Shift+Enter เช่นกัน ผมคีย์ตกไปครับ
ขอบคุณท่านอาจารย์ครับ ผมทำตามได้แล้วแต่ไม่ค่อยรู้ดี ศึกษาก่อนเป็นไงค่อยรบกวนอีกครับ