:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

vlookup กับข้อมูลเยอะ ๆ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

vlookup กับข้อมูลเยอะ ๆ

#1

Post by wthn »

คือมีปัญหากับการใช้ vlookup กับข้อมูลเยอะ ๆ ไม่รู้ว่าจะสามารถทำได้หรือไม่ แล้วอยากให้ช่วยหาค่าในคอลัมน์ CA ใน sheet 2 ที่มีค่าในคอลัมน์ Batch number และ Doc num ที่ตรงกันกับ Batch และ Doc ใน sheet 1
ไม่รู้จะรบกวนไปมั้ย
You do not have the required permissions to view the files attached to this post.
Last edited by wthn on Thu Oct 13, 2011 10:05 am, edited 1 time in total.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#2

Post by snasui »

:D งดใช้ภาษาแชทในฟอรัมครับ

ผมทำตัวอย่างการ Match ข้อมูลให้แล้วตามไฟล์แนบ โดยในชีท 2 ให้เพิ่มคอลัมน์เพื่อสำหรับ Match ข้อมูลจากนั้นใช้สูตร Match มาช่วย และกรองมาใช้เฉพาะค่าที่ได้ True (แสดงว่าเข้าเงื่อนไขตามต้องการ)
You do not have the required permissions to view the files attached to this post.
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#3

Post by wthn »

หากเราต้องการจะให้ในชีทที่ 1 คอลัมน์ CA แสดงค่าเหมือนในคอลัมน์ CA ในชีทที่ 2 ที่มีค่าในคอลัมน์ Batch number และ Doc number ที่ตรงกันทั้งสองชีท ควรจะต้องใช้สูตรอะไรครับ ช่วยแนะนำด้วย ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#4

Post by snasui »

:D ที่ชีท 1 เซลล์ G2 คีย์สูตร

=SUMPRODUCT(--('2'!$C$2:$C$1019=B2),--('2'!$D$2:$D$1019=C2),'2'!$F$2:$F$1019)

Enter > Copy ลงด้านล่าง
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#5

Post by wthn »

ไม่ต้องการให้ค่าที่ได้เป็นผลรวมครับ อยากให้เป็น line by line มากกว่าครับ ต้องแก้สูตรอย่างไรครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#6

Post by snasui »

:D ลองตามนี้ครับ

ที่เซลล์ G2 คีย์สูตร

=Index('2'!$F$2:$F$1019,Match(1,If('2'!$C$2:$C$1019=B2,If('2'!$D$2:$D$1019=C2,1)),0))

Ctrl+Shift+Enter > Copy ลงด้านล่าง
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#7

Post by wthn »

error ครับ ตามไฟล์ที่แนบมา
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#8

Post by snasui »

:lol: กดแป้นไม่ถูกต้องครับ
snasui wrote: :D ลองตามนี้ครับ

ที่เซลล์ G2 คีย์สูตร

=Index('2'!$F$2:$F$1019,Match(1,If('2'!$C$2:$C$1019=B2,If('2'!$D$2:$D$1019=C2,1)),0))

Ctrl+Shift+Enter > Copy ลงด้านล่าง
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#9

Post by wthn »

ถ้าหากอยากได้เป็นค่าแบบบรรทัดต่อบรรทัดเลยล่ะครับ ไม่เอาค่าเฉพาะของบรรทัดแรก เช่นในชีท 2 มีข้อมูลในคอลัมน์ CA อยู่ 9 บรรทัด ไปใส่ในชีท 1 ตามบรรทัดของแต่ละตัวเลยครับ ไม่รู้ว่าแบบนี้จะใช้ vlookup ได้มั้ยครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#10

Post by snasui »

:lol: ลองดูสูตรตามด้านล่างครับ ซึ่งค่าที่ไม่ตรงกันจะแสดงค่า 0

ที่ G2 คีย์

=LOOKUP(9.99999999999999E+307,CHOOSE({1,2},0,INDEX('2'!$F$2:$F$1019,SMALL(IF('2'!$C$2:$C$1019=B2,IF('2'!$D$2:$D$1019=C2,ROW('2'!$A$2:$A$1019)-ROW('2'!$A$2)+1)),SUMPRODUCT(--('2'!C$2:C2='2'!C2),--('2'!D$2:D2='2'!D2))))))

Ctrl+Shift+Enter > Copy ลงด้านล่าง

Vlookup เป็นการ Lookup แบบตัวต่อตัว ไม่สามารถนำมาใช้กับงานแบบนี้ได้ครับ :P
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#11

Post by wthn »

ยังไม่ได้ค่าตามที่ต้องการเลยครับ ยังคงแสดงค่าทั้งหมดด้วยค่าบรรทัดแรก ยังไงช่วยหาคำตอบให้ด้วยนะครับ ต้องการใช้มากเพราะข้อมูลจริง ๆ เยอะมาก คงจะต้องพึ่งสูตรจากพี่แล้วล่ะครับ (ดูผลได้จากไฟล์ที่แนบไฮไลท์สีเหลือง)
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#12

Post by snasui »

:D :tt: อ้างตำแหน่งเซลล์ผิดไปครับ ได้ปรับตำแหน่งเซลล์ใหม่และปรับสูตรให้กระชับลง

ที่ G2 คีย์

=LOOKUP(9.99999999999999E+307,CHOOSE({1,2},0,INDEX('2'!$F$2:$F$1019,SMALL(IF('2'!$C$2:$C$1019=B2,IF('2'!$D$2:$D$1019=C2,ROW('2'!$A$2:$A$1019)-ROW('2'!$A$2)+1)),SUM(IF(B$2:B2=B2,IF(C$2:C2=C2,1)))))))

Ctrl+Shift+Enter > Copy ลงด้านล่าง
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#13

Post by wthn »

สำเร็จแล้ว ขอบคุณมากครับ แต่ขอถามเป็นความรู้นะครับ ว่าทำไมเราต้องใช้ Ctrl+Shift+Enter แล้วค่อยก๊อปปี้ ทำไมก๊อปปี้ลงมาเลยไม่ได้ล่ะครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#14

Post by snasui »

:D ประเด็นของการ Ctrl+Shift+Enter เป็นการ Enter ให้รับสูตรแบบ Array ครับ ถ้าไม่กด 3 แป้นก็จะไม่ได้ผลลัพธ์ตามต้องการ

ไม่ใช่ว่าต้อง Ctrl+Shift+Enter แล้วค่อย Copy เสมอ ถ้าสูตรถูกเขียนไว้แล้วและต้องการนำไปใช้ที่อื่น ๆ ก็ Copy ไปได้เลย ที่ผมเขียนเป็น Ctrl+Shift+Enter > Copy ลงด้านล่าง เพราะเป็นขั้นตอนที่ต่อเนื่องกันเท่านั้นครับ :P
wthn
Member
Member
Posts: 54
Joined: Sat May 14, 2011 5:40 pm

Re: vlookup กับข้อมูลเยอะ ๆ

#15

Post by wthn »

แบบว่าเกิดปัญหาแล้วครับผม พอลองไปใช้งานจริง ไฟล์ที่ใช้เทียบกันดันเป็นคนละไฟล์ ไม่ได้อยู่ชีทเดียวกันเหมือนตัวอย่างที่ให้ไป จะต้องปรับสูตรยังไงครับ เพราะลำพังจะลองแก้สูตรเองก็งงกับสูตรที่ยาวมากกก :lol:
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: vlookup กับข้อมูลเยอะ ๆ

#16

Post by snasui »

:D ลองแบบนี้ครับจะได้ไม่ต้องเขียนหรือปรับสูตรแบบอ้างอิงข้ามไฟล์ใหม่

1. Copy ค่าจากไฟล์ที่ 2 มาวางในไฟล์ที่ 1 ทับค่าเดิมที่มีอยู่แล้ว
2. ปรับช่วงข้อมูลในสูตรให้ครอบคลุมช่วงข้อมูลจริงที่นำมาวาง
3. Cut ข้อมูลที่นำมาวางกลับไปยังไฟล์ที่ 2
Post Reply