Page 1 of 1
Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Mon Apr 02, 2018 7:14 am
by Charnon9
สอบถามท่านผู้รู้ทุกท่านนะครับ พอจะมีสูตรที่จะดึงเอาค่าที่เหมือนกัน จาก sheet2 ที่เหมือนกัน มาร่วมไว้ ในsheet1 ในชื่อเดียวกันได้ไหมครับ ผมได้แนนตัวอย่างไฟล์มาให้ดู้ด้วยครับ ขอบคุณทุกความคิดเห็นครับผม
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Mon Apr 02, 2018 9:53 am
by logic
ยังไม่ค่อยเข้าใจครับ
ลองกรอกคำตอบมาเป็นตัวอย่างสักสี่ห้าบรรทัดพร้อมอธิบายกำกับครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Mon Apr 02, 2018 12:41 pm
by Charnon9
ขอบคุณมากครับที่เข้ามาตอบ
คือตอนนี้ผมกำลังเก็บข้อมูลการทำงานของพนักงานในแต่ละstation เพื่อหาเวลาว่าชิ้นงานแต่ละชิ้นใช้เวลาตรวจนานเท่าไร โดยที่งานชิ้น1 อาจจะถูกตรวจจากหลายคนครับ
ในไฟล์ที่แนบไป ผมตั้งชื่อ ไฟล์ แรกเป็น standard Times เพื่อดึงข้อมูลการทำงานใน sheet2: Data
-ข้อมูลใน Data จะทำการเก็บค่าเฉลี่ยเวลาการทำงานของแต่ละชิ้นงานที่คอลัม K
Id model audit item side en brd1 Data1 Data2 Data3 Data4 avg
1839 73-12089 Confirm boards SMT Top 00093661 CAT2212B003 0:28:35 0:28:35
1840 73-12089 Confirm boards SMT Top 00093661 CAT2212B003 0:25:35 0:25:35
1841 73-12089 Confirm boards SMT Top 00093661 CAT2212B003 0:22:35 0:22:35
1842 73-12089 Confirm boards SMT Top 00093661 CAT2212B003 0:29:35 0:29:35
-ในsheet Standard Times จะเป็นตัวเก็บข้อมูลเอามาเฉลี่ยงานแต่ละชิ้นว่าใช้เวลาประมาณเท่าไร ผมยกตัวอย่างด้านล่างครับ
No Model Station Side count data Averange 1 2 3 4
1 73-12089 Confirm boards SMT Top 4 0:26:35 0:28:35 0:25:35 0:22:35 0:29:35
ไม่รู้ว่าผมอธิบายเข้าใจหรือป่าวครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Mon Apr 02, 2018 2:04 pm
by logic
ลองดูครับ
ชีต Standard Time
B2 =LOOKUP(CHAR(255),CHOOSE({1,2},"",INDEX(Data!B$2:B$29,SMALL(IF(FREQUENCY(IF(Data!$B$2:$B$29<>"",MATCH(Data!$B$2:$B$29,Data!$B$2:$B$29,0)),ROW(Data!$B$2:$B$29)-ROW(Data!$B$2)+1),ROW(Data!$B$2:$B$29)-ROW(Data!$B$2)+1),ROWS(B$18:B18))))) กดแป้นแบบ Array คือ Ctrl+Shift+Enter แล้วคัดลอกสูตรไปขวามือจนถึง D2 แล้วคัดลอกสูตรไปด้านล่าง วิธีกดแป้นอ่านจากลิงก์นี้ได้ครับ
viewtopic.php?f=6&p=81118#p81118
G2 =LOOKUP(9.9999999999999E+307,CHOOSE({1,2},0,INDEX(Data!$K$2:$K$29,SMALL(IF($B2=Data!$B$2:$B$29,ROW(Data!$B$2:$B$29)-ROW(Data!$B$2)+1),G$1)))) กดแป้น Ctrl+Shift+Enter แล้วคัดลอกสูตรไปทางขวาถึง IL2 แล้วคัดลอกสูตรไปด้านล่าง
อ่านสูตรพวกนี้ได้จากโพสต์ของอาจารย์คนควนครับ
search.php?keywords=lookup%2Bchoose&ter ... B%E0%B8%B2
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Tue Apr 03, 2018 6:48 am
by Charnon9
ขอคำอธิบายอีกรอบนะครับ
-ในส่วน sheet Standard ตั้งแต่ช่วงข้อมูล B2:Dxxxx เป็นส่วนที่จะลงข้อมูลเองครับไม่ได้ดึงข้อมูลมาจากที่ใด
-ในช่วงข้อมูล G2:ILxxxxx ในส่วนนี้ผมอยากให้ดึงข้อมูลใน sheet Data ที่มี Model ,Station และ Side ที่เหมือนกัน โดยเอาค่าเฉลี่ย ที่ column K2:Kxxxx เพื่อเป็นการเก็บข้อมูลในแต่ละ model ว่าทำงานโดยเฉลี่ยเท่าไรครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Tue Apr 03, 2018 10:04 am
by parakorn
G1 =IFERROR(INDEX(Data!$K$2:$K$29,SMALL(IF($B2&$C2&$D2=Data!$B$2:$B$29&Data!$C$2:$C$29&Data!$D$2:$D$29,ROW(Data!$K$2:$K$29)-ROW(Data!$K$2)+1),'Standard Time'!G$1)),"") ctrl+shift+enter แล้ว copyไปทางขวาและลงด้านล่างครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 7:08 am
by Charnon9
ทำไมค่ามันไม่มาครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 9:45 am
by logic
แนบไฟล์มาด้วยจะได้ช่วยกันดูได้ครับ

Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 10:20 am
by Charnon9
G2 ผมใช้สูตรนี้ครับ แต่ค่าไม่มาครับ =IFERROR(INDEX(Data!$K$2:$K$29,SMALL(IF($B2&$C2&$D2=Data!$B$2:$B$29&Data!$C$2:$C$29&Data!$D$2:$D$29,ROW(Data!$K$2:$K$29)-ROW(Data!$K$2)+1),'Standard Time'!G$1)),"") ctrl+shift+enter แล้ว copyไปทางขวาและลงด้านล่างครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 10:32 am
by logic
ลองดูครับ
G2 =INDEX(Data!$K$2:$K$29,SMALL(IF($B2&$C2&$D2=Data!$B$2:$B$29&Data!$C$2:$C$29&Data!$D$2:$D$29,ROW(Data!$K$2:$K$29)-ROW(Data!$K$2)+1),'Standard Time'!G$1)) กดแป้น Ctrl+Shift+Enter คัดลอกไปด้านขวาและลงด้านล่าง
Iferror ใช้กับ Excel 2007 ขึ้นไป นำมาใช้กับ 2003 ไม่ได้ครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 4:19 pm
by Charnon9
ผมได้ลองใช้สูตรแล้วก็ยังไม่มาครับ ผมเลยลงข้อมูลที่ผมอยากจะได้ในไฟล์ที่แนบมาแล้วครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Wed Apr 04, 2018 7:49 pm
by snasui

สูตรนั้นทำงานได้เพียงแต่จะติดค่า Error มาด้วย หากไม่ต้องการให้ติดค่า Error สามารถปรับสูตรเป็นด้านล่างครับ
เซลล์ G2 คีย์สูตร
=IF(COLUMNS($G2:G2)<=SUM(IF(Data!$B$2:$B$29=$B2,IF(Data!$C$2:$C$29=$C2,IF(Data!$D$2:$D$29=$D2,1)))),INDEX(Data!$K$2:$K$29,SMALL(IF(Data!$B$2:$B$29=$B2,IF(Data!$C$2:$C$29=$C2,IF(Data!$D$2:$D$29=$D2,ROW(Data!$K$2:$K$29)-ROW(Data!$K$2)+1))),G$1)),"")
Ctrl+Shift+Enter > Copy ไปด้านขวาและลงด้านล่าง
ที่ผ่านมาคุณ Charnon9 กดแป้นให้รับสูตรไม่ถูกต้อง ดูวิธีการกดแป้นให้รับสูตรได้ที่นี่ครับ
viewtopic.php?f=6&p=81118#p81118
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Thu Apr 05, 2018 7:11 am
by Charnon9
ขอบคุณมากครับผม ได้แล้วครับ
ผมคงต้องไปศึกษาสูตรแต่ละตัวแล้วครับ เพราะตีความหมายได้ไม่กี่ตัวเองครับในสูตรนี้
พอมีกระทู้ไหนแนะนำเป็นพิเศษไหมครับ ที่ได้อธิบายสูตรเหล่านี้เอาไว้ครับผม
ขอบคุณอีกครั้งครับ
Re: Vlookup เอาค่าที่เหมือนกันมาแสดงครับ
Posted: Thu Apr 05, 2018 8:35 am
by logic
ศึกษาแต่ละฟังก์ชั่นจากไฟล์ที่อาจารย์คนควนทำแจกได้ครับ
viewtopic.php?f=9&t=13233