Page 1 of 1
สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Wed Apr 17, 2013 3:41 pm
by taewada
ผมอยากให้ช่องc10 ขึ้นเองโดยอัีตโนมัติครับผมต้องใช้สูตรvlookupอย่างไร
หรือมีสูตรอื่นไหมครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Wed Apr 17, 2013 4:45 pm
by joo
ลองตามนี้ดูครับที่ C10 คีย์ =INDEX($C$2:$C$5,MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0)) กดแป้น Ctrl+Shift+Enter พร้อมกัน
หรือแบบนี้ =SUMPRODUCT(--($A$2:$A$5=$A$10),--($B$2:$B$5=$B$10),$C$2:$C$5)
ถ้าไม่ใช้ลองแนบไฟล์ตัวอย่างพร้อมระบุเงื่อนไขและคำตอบที่ต้องการมาด้วยครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Thu Apr 18, 2013 8:29 am
by taewada
joo wrote: ลองตามนี้ดูครับที่ C10 คีย์ =INDEX($C$2:$C$5,MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0)) กดแป้น Ctrl+Shift+Enter พร้อมกัน
หรือแบบนี้ =SUMPRODUCT(--($A$2:$A$5=$A$10),--($B$2:$B$5=$B$10),$C$2:$C$5)
ถ้าไม่ใช้ลองแนบไฟล์ตัวอย่างพร้อมระบุเงื่อนไขและคำตอบที่ต้องการมาด้วยครับ
แบบนี้เลยครับที่ต้องการ
เจตนาผมคือให้พิม์ต้นทางและปลายทางราคาก็จะขึ้นอัตโนมัติ ตอนแรกผมใช้vlookupแต่ทำไม่ได้ครับ
ขอบคุณมากครับ
รบกวนช่วยอธิบายสูตรเป็นขั้นๆได้ไหมครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Thu Apr 18, 2013 1:01 pm
by joo
taewada wrote:รบกวนช่วยอธิบายสูตรเป็นขั้นๆได้ไหมครับ
จากสูตร =INDEX($C$2:$C$5,MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0))
ความหมายคือ จากช่วง $C$2:$C$5 ให้นำลำดับที่เป็นผลลัพธ์ของ MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0))มาแสดง
จาก MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0)) หมายถึง ให้หาว่า เลข 1 อยู่ในลำดับที่เท่าไรจากผลลัพธ์ของสูตร IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1))
จากสูตร IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)) หมายถึง ถ้า $A$2:$A$5=$A$10 แล้ว ให้แสดงผลลัพธ์ของ IF($B$2:$B$10=$B$10,1)
จาก สูตร IF($B$2:$B$10=$B$10,1)หมายความว่า ถ้า IF($B$2:$B$10=$B$10,1)ให้แสดงค่า 1 ถ้าไม่ใช่ให้แสดงค่า False
วิธีแกะสูตร ให้คลิกเซลล์ C10 แล้วกด F2
1.ลากเม้าท์คลุม $C$2:$C$5 แล้วกด F9 ก็จะได้
=INDEX({200;300;500;800},MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0))
2.ลากเม้าท์คลุม IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)) แล้วกด F9 ก็จะได้
=INDEX({
200;300;500;800},MATCH(1,{
1;FALSE;FALSE;FALSE},0))
จะเห็นว่าเลข1 อยู่ในลำดับที่1 คำตอบก็คือ 200
ส่วนสูตร SUMPRODUCT ดูได้จากลิงค์นี้ครับ
wordpress/?p=385
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Jul 07, 2015 3:09 pm
by jumping
สูตรนี้ใช้แยกSheet ได้ไหมค่ะ หรือข้อมูลต้องอยู่ในSheet เดียวกันค่ะ
และถ้าข้อมูลอยู่คนละSheet ต้องใช้สูตรแบบไหนค่ะ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Wed Jul 08, 2015 3:23 pm
by DhitiBank
jumping wrote:สูตรนี้ใช้แยกSheet ได้ไหมค่ะ หรือข้อมูลต้องอยู่ในSheet เดียวกันค่ะ
และถ้าข้อมูลอยู่คนละSheet ต้องใช้สูตรแบบไหนค่ะ
ใช้แยกชีทได้ครับ หรือใช้อ้างอิงข้อมูลที่อยู่คนละไฟล์ก็ได้ด้วย เพียงแต่ในสูตรที่คุณ joo เขียน
=INDEX(
$C$2:$C$5,MATCH(1,IF(
$A$2:$A$5=
$A$10,IF(
$B$2:$B$5=
$B$10,1)),0))
ตรงที่ระบายสี ก็ต้องระบุให้ถูกว่าต้นทางอยู่ที่ไหน ปลายทางคือที่ไหนครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Wed Jul 08, 2015 10:40 pm
by lotto009
สูตรโหดมากมาก
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Fri Jul 10, 2015 6:27 pm
by isensosuikar
ว่าจะเข้ามาเก็บความรู้ เห็นสูตรแล้ว ไปไม่ถูกเลยครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 11:30 am
by noonoon
ลอง Test ตามตัวอย่าง แล้ว copy สูตรไปวาง ทำไมขึ้น #N/A ค่ะ
จะได้ใช้อยู่เหมือนกันค่ะ
joo wrote: ลองตามนี้ดูครับที่ C10 คีย์ =INDEX($C$2:$C$5,MATCH(1,IF($A$2:$A$5=$A$10,IF($B$2:$B$5=$B$10,1)),0)) กดแป้น Ctrl+Shift+Enter พร้อมกัน
หรือแบบนี้ =SUMPRODUCT(--($A$2:$A$5=$A$10),--($B$2:$B$5=$B$10),$C$2:$C$5)
ถ้าไม่ใช้ลองแนบไฟล์ตัวอย่างพร้อมระบุเงื่อนไขและคำตอบที่ต้องการมาด้วยครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 12:02 pm
by DhitiBank
ที่สูตรไม่แสดงผล เพราะคำว่า "ปากช่อง" ในตารางด้านบนจะมี "เว้นวรรค" ต่อท้ายคำว่า "ปากช่อง" ทำให้สูตรหาคำว่า "ปากช่อง" (ที่ไม่มีเว้นวรรค) ไม่เจอ ให้ลบเว้นวรรคท้ายคำว่าปากช่องออกไปครับ
แล้วก็ การคีย์ข้อความที่ไม่ใช่ตัวเลข ผมคิดว่าไม่ต้องใส่เครื่องหมาย
'
นำหน้าก็ได้ครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 1:23 pm
by noonoon
ขอบคุณนะค่ะ ได้แล้วค่ะ แต่ ' ไม่ได้พิมพ์ค่ะ พิมพ์ "ปากช่อง" ปกติ พอ enter กลับมาคลิกดูมันติด ' มาเองค่ะ
มีผลอะไรกับข้อมูลรึป่าวค่ะ
DhitiBank wrote: ที่สูตรไม่แสดงผล เพราะคำว่า "ปากช่อง" ในตารางด้านบนจะมี "เว้นวรรค" ต่อท้ายคำว่า "ปากช่อง" ทำให้สูตรหาคำว่า "ปากช่อง" (ที่ไม่มีเว้นวรรค) ไม่เจอ ให้ลบเว้นวรรคท้ายคำว่าปากช่องออกไปครับ
แล้วก็ การคีย์ข้อความที่ไม่ใช่ตัวเลข ผมคิดว่าไม่ต้องใส่เครื่องหมาย
'
นำหน้าก็ได้ครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 1:37 pm
by DhitiBank
noonoon wrote:มันติด ' มาเองค่ะ มีผลอะไรกับข้อมูลรึป่าวค่ะ
อันนี้ผมไม่แน่ใจครับ หากสูตรแสดงผลถูกต้องผมคิดว่าไม่น่าจะมีผลกระทบอะไร แต่หากต้องการเอาออก วิธีหนึ่งที่ผมใช้คือ
เลือกเซลล์ --> เมนู Home --> Clear --> Clear All แล้วคีย์ใหม่ครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 1:40 pm
by noonoon
DhitiBank wrote:noonoon wrote:มันติด ' มาเองค่ะ มีผลอะไรกับข้อมูลรึป่าวค่ะ
อันนี้ผมไม่แน่ใจครับ หากสูตรแสดงผลถูกต้องผมคิดว่าไม่น่าจะมีผลกระทบอะไร แต่หากต้องการเอาออก วิธีหนึ่งที่ผมใช้คือ
เลือกเซลล์ --> เมนู Home --> Clear --> Clear All แล้วคีย์ใหม่ครับ
แต่ลองนำมาปรับกับข้อมูลที่จะใช้ ผลออกมาเป็น #N/A ตามไฟล์แนบ sheet2 ค่ะ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 1:53 pm
by DhitiBank
มีปัญหา 2 เรื่องครับ
1. ช่วงอ้างอิงบางช่วงในสูตรไม่ได้ปรับให้สอดคล้องกับข้อมูลจริง
2. ข้อมูลใน Sheet2 คอลัมน์ B มีเว้นวรรคต่อท้ายข้อมูล ยกตัวอย่าง "AM " ไม่เท่ากับ "AM" ครับ
ดังนั้น หากใช้สูตรเดิม ก็จะต้องปรับสูตรเป็น
=INDEX(Sheet1!$D$2:$D$13895,MATCH(1,IF([color=#FF0000]Sheet1!$A$2:$A$1389[/color]=A1,IF(Sheet1!$B$2:$B$1389=[color=#FF0000]TRIM(B1)[/color],1)),0))
จากไฟล์ตัวอย่างต้องใส่สูตรจำนวนมาก หากเปลี่ยนจากสูตรอาร์เรย์เป็น sumifs น่าจะทำให้คำนวณเร็วขึ้นครับ
ที่ E1 ลองคีย์
=SUMIFS(Sheet1!$D$2:$D$1389,Sheet1!$A$2:$A$1389,A1,Sheet1!$B$2:$B$1389,TRIM(B1))
Enter --> คัดลอกลงล่างครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 1:58 pm
by menem
ผมเขียนสูตรที่เป็น Array ไม่คล่อง ( จริง ๆ ต้องบอกว่าแทบไม่ได้เลยมากกว่า )
ก็เลยชอบใช้วิธีนี้แทนครับ
Re: สอบถามการใช้สูตรvlookupมองเงือนไข2เงื่อนไขครับ
Posted: Tue Feb 02, 2016 2:00 pm
by noonoon
ได้แล้วค่ะ ตรงเป๊ะค่ะ ขอบคุณมากนะค่ะ
DhitiBank wrote:มีปัญหา 2 เรื่องครับ
1. ช่วงอ้างอิงบางช่วงในสูตรไม่ได้ปรับให้สอดคล้องกับข้อมูลจริง
2. ข้อมูลใน Sheet2 คอลัมน์ B มีเว้นวรรคต่อท้ายข้อมูล ยกตัวอย่าง "AM " ไม่เท่ากับ "AM" ครับ
ดังนั้น หากใช้สูตรเดิม ก็จะต้องปรับสูตรเป็น
=INDEX(Sheet1!$D$2:$D$13895,MATCH(1,IF([color=#FF0000]Sheet1!$A$2:$A$1389[/color]=A1,IF(Sheet1!$B$2:$B$1389=[color=#FF0000]TRIM(B1)[/color],1)),0))
จากไฟล์ตัวอย่างต้องใส่สูตรจำนวนมาก หากเปลี่ยนจากสูตรอาร์เรย์เป็น sumifs น่าจะทำให้คำนวณเร็วขึ้นครับ
ที่ E1 ลองคีย์
=SUMIFS(Sheet1!$D$2:$D$1389,Sheet1!$A$2:$A$1389,A1,Sheet1!$B$2:$B$1389,TRIM(B1))
Enter --> คัดลอกลงล่างครับ