: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

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

เรื่องของสูตร Vlookup

#1

Post by isensosuikar »

อยากสอบถามว่า Vlookup

ในส่วนของ Lookup_value สามารถเลือก cell ได้มากกว่า 1 ไหมครับ

จากไฟล์ที่ผมแนบให้ คือค่ามันจะแสดงเมื่อใส่ข้อมมูลใน B(รถบริษัท) เท่านั้น

ผมอยากจะให้ค่ามันแสดงเมื่อ ใส่ข้อมูลในส่วนของ A(รถร่วม) ด้วย โดยใส่สูตรแค่ครั้งเดียวอะครับ

ถ้าทำไม่ได้ มีสูตรอื่นที่ทำได้ไหมครับ

ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: เรื่องของสูตร Vlookup

#2

Post by bank9597 »

:D ยังไม่เข้าใจโจทย์ครับ ลองอธิบายอีกครั้งได้ไหมครับ
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
joo
Gold
Gold
Posts: 1213
Joined: Sat Apr 17, 2010 3:50 pm

Re: เรื่องของสูตร Vlookup

#3

Post by joo »

:D ลองแบบนีดูครับว่าใช้กับที่ต้องการหรือไม่ที่ C2 คีย์ =IF($A2="",VLOOKUP($B2,พขร!$1:$65536,2,0),VLOOKUP($A2,พขร!$1:$65536,2,0))
Enter > Copy ลงด้านล้าง
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

Re: เรื่องของสูตร Vlookup

#4

Post by isensosuikar »

Vlookup ที่ผมใช้อยู่จะเห็นว่า ข้อมูลใน C2,D2,E2 จะขึ้นมาต่อเมื่อ คีย์ทะเบียนใส่ใน B2,B3 ลงมา

แต่ถ้า คีย์ทะเบียน ใน A13,A14 ลงมาเรื่อยๆ ข้อมูลใน C13,D13,E13 จะไม่ขึ้นมา


อยากทราบพอจะมีวิธี ให้ข้อมูลในส่วนของ C,D,Eขึ้นมาทุกครั้ง ไม่ว่าจะคีย์ ทะเบียน ลงใน AหรือB ก็ตามบ้างไหมครับ


ถ้าVlookup ทำไม่ได้มีสูตรอื่นที่ทำได้ไหมครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เรื่องของสูตร Vlookup

#5

Post by snasui »

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

ที่ C2 คีย์

=LOOKUP(CHAR(255),CHOOSE({1,2},"",VLOOKUP(LOOKUP(CHAR(255),$A2:$B2),พขร!$1:$1048576,2,0)))

Enter > Copy ลงด้านล่าง > ปรับสูตรใช้กับคอลัมน์ D:E
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

Re: เรื่องของสูตร Vlookup

#6

Post by isensosuikar »

ได้แล้วครับ ขอบคุณทุกท่านที่ช่วยตอบครับผม
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

Re: เรื่องของสูตร Vlookup

#7

Post by isensosuikar »

ตอนแรกว่าจะ ดูว่าสูตรที่ คุณ snasui ให้มันมีที่มายังไง

เผื่อว่าจะทำเองเป็น แต่พอลองแล้ว จับต้นชนปลายไม่ถูกเลยครับ เศร้าเลยผม

คุณ snasui สงสัยจะเก่งเกินไป
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: เรื่องของสูตร Vlookup

#8

Post by DhitiBank »

:o สุดยอดเลยครับ ขอเก็บเอาไปใช้นะครับ
isensosuikar wrote:ตอนแรกว่าจะ ดูว่าสูตรที่ คุณ snasui ให้มันมีที่มายังไง

เผื่อว่าจะทำเองเป็น
ผมขอลองอธิบายเพื่อทดสอบความเข้าใจหน่อยนะครับ ถูกผิดอย่างไร รบกวนอาจารย์แก้ไขให้ทีครับ
1. จากด้านใน
LOOKUP(CHAR(255),$A7:$B7)
สูตรนี้หมายความว่าให้มองหาตัวอักษรใดๆ ก็ตามที่ปรากฎอยู่ที่เซล A7 และ B7 (มีคำสั่ง CHAR(255) หมายถึงตัวอักษร หรือข้อความใดๆ) พอพบก็จะคืนค่าเป็นอักษรหรือข้อความนั้นๆ ในที่นี้คือทะเบียนรถ

2. VLOOKUP(...(1)...,พขร!$1:$1048576,4,0)
สูตรนี้จะเอาทะเบียนที่ได้จากข้อ 1 มาหาจากตารางในชีท พขร เพื่อส่งกลับค่าในคอลัมน์ที่ 4 ซึ่งก็คือ ประเภทรถ

3. CHOOSE({1,2},"",...(2)...)
สูตรนี้ใส่ไว้เผื่อในกรณีไม่มีการคีย์ทะเบียนทั้งในคอลัมน์ A และ B ซึ่งจะแสดงค่าผิดพลาด #N/A หากไม่มีสูตรนี้ แทนที่จะเป็นแบบนั้นก็บังคับให้มีตัวเลือกในการแสดงผลคือ ค่าว่าง ("") กับ #N/A

4. LOOKUP(CHAR(255),...(3)...)
สูตรนี้จะต่อเนื่องจากข้อ 3 คือหากมีค่าผิดพลาด สูตรก็จะบังคับให้แสดงค่าว่างแทน
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เรื่องของสูตร Vlookup

#9

Post by snasui »

:thup: เป็นวิธีอธิบายที่ดีอีกวิธีคืออธิบายจากสูตรย่อยไปยังสูตรใหญ่ ปกติการเขียนสูตรควรจะเขียนเช่นนี้คือเขียนสูตรในสุดมายังนอกสุด
DhitiBank wrote:1. จากด้านใน
LOOKUP(CHAR(255),$A7:$B7)
สูตรนี้หมายความว่าให้มองหาตัวอักษรใดๆ ก็ตามที่ปรากฎอยู่ที่เซล A7 และ B7 (มีคำสั่ง CHAR(255) หมายถึงตัวอักษร หรือข้อความใดๆ) พอพบก็จะคืนค่าเป็นอักษรหรือข้อความนั้นๆ ในที่นี้คือทะเบียนรถ
ความหมายคือให้นำค่าในเซลล์สุดท้ายที่พบในช่วง $A7:$B7 นั่นหมายความว่า ถ้า B7 มีค่าก็นำ B7 มาแสดง ถ้า B7 ไม่มีค่าใดและ A7 มีค่าก็นำ A7 มาแสดง
DhitiBank wrote:2. VLOOKUP(...(1)...,พขร!$1:$1048576,4,0)
สูตรนี้จะเอาทะเบียนที่ได้จากข้อ 1 มาหาจากตารางในชีท พขร เพื่อส่งกลับค่าในคอลัมน์ที่ 4 ซึ่งก็คือ ประเภทรถ
อธิบายได้ถูกต้องแล้วครับ
DhitiBank wrote:3. CHOOSE({1,2},"",...(2)...)
สูตรนี้ใส่ไว้เผื่อในกรณีไม่มีการคีย์ทะเบียนทั้งในคอลัมน์ A และ B ซึ่งจะแสดงค่าผิดพลาด #N/A หากไม่มีสูตรนี้ แทนที่จะเป็นแบบนั้นก็บังคับให้มีตัวเลือกในการแสดงผลคือ ค่าว่าง ("") กับ #N/A
เป็นการนำค่า "" และผลลัพธ์ตามข้อ 2 มาเป็น Array และใช้ใน Lookup ตามข้อ 4 อีกทอดหนึ่ง
DhitiBank wrote:4. LOOKUP(CHAR(255),...(3)...)
สูตรนี้จะต่อเนื่องจากข้อ 3 คือหากมีค่าผิดพลาด สูตรก็จะบังคับให้แสดงค่าว่างแทน
จากข้อ 3 จะสืบทอดผลลัพธ์มายังข้อ 4 โดยสูตรจะได้เป็น =Lookup(Char(255),{"","ผลลัพธ์จาก Vlookup"}) ซึ่งหมายความว่า ให้หาค่าสุดท้ายที่เป็นอักขระในช่วง {"","ผลลัพธ์จาก Vlookup"} หากผลลัพธ์ของ Vlookup ไม่เป็น #N/A ก็เอาผลลัพธ์ของ Vlookup มาแสดง หากเป็น #N/A ก็จะนำค่าว่างมาแสดง
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: เรื่องของสูตร Vlookup

#10

Post by DhitiBank »

โอ้.... ชัดเจนเลยครับ ขอบคุณอาจารย์มากครับ

เพิ่งรู้ว่าสูตร Lookup(Char(255),...) จะมองพบ "" ได้ และหากไม่พบอักขระใดก็จะแสดงค่า "" หากมี "" อยู่ในตัวเลือก ขอบคุณอีกครั้งครับ

อาจารย์ครับ ผมสงสัยว่า หากผมจะเอาปรับใช้โดยปรับสูตรเป็น
=IFERROR(VLOOKUP(LOOKUP(CHAR(255),...)...),"")
มันจะใช้ได้หรือมีข้อจำกัดอะไรไหมครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เรื่องของสูตร Vlookup

#11

Post by snasui »

:D สำหรับ Excel 2007 เป็นต้นไปสามารถใช้ได้ไม่มีข้อจำกัดใดครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: เรื่องของสูตร Vlookup

#12

Post by DhitiBank »

snasui wrote::D สำหรับ Excel 2007 เป็นต้นไปสามารถใช้ได้ไม่มีข้อจำกัดใดครับ
ขอบคุณมากครับ
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

Re: เรื่องของสูตร Vlookup

#13

Post by isensosuikar »

ขอบคุณทั้ง 2 ท่านมากครับ ที่ช่วยอธิบาย

พอจะเข้่าใจได้บ้าง แต่ยังไม่แน่ใจว่าจะทำได้หรือเปล่าครับ

เห็นท่าน 2 คนแล้ว เหมือนผมเป็นเด็กเลย - -
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: เรื่องของสูตร Vlookup

#14

Post by DhitiBank »

เอ่อ...ผมก็เด็กสำหรับ excel เหมือนกันครับ โปรดอย่าชมขนาดนั้นเลย
อยากเก่งและเข้าใจมากขึ้นก็ต้องลองใช้ครับ แล้วก็เข้ามาศึกษาในบอร์ดนี้มากๆ อาจารย์คนควนและเพื่อนๆ ทุกคนใจดี พร้อมช่วยเหลือครับ
isensosuikar
Member
Member
Posts: 63
Joined: Tue Feb 19, 2013 10:51 am

Re: เรื่องของสูตร Vlookup

#15

Post by isensosuikar »

ครับ ว่างๆแล้วจะเข้ามาครับ
Post Reply