: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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
liveday
Bronze
Bronze
Posts: 286
Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007

VLOOKUP

#1

Post by liveday »

เรียนอาจารย์
ผมต้องการทำ VLOOKUP ครับ กรณีที่เลือกจังหวัดแล้ว ให้เขตแสดงขึ้นมาเฉพาะจังหวัดนั้นๆครับ ผมต้องใช้เงื่อนไขอะไรบ้างครับในช่อง (cell B3)

ทั้งนี้ผมได้แนบไฟล์ตัวอย่างมาให้ดูด้วยครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: VLOOKUP

#2

Post by snasui »

:D ไม่เข้าใจครับ

ในเซลล์ B3 คำตอบที่ถูกควรเป็นเท่าใดบ้างครับ
liveday
Bronze
Bronze
Posts: 286
Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007

Re: VLOOKUP

#3

Post by liveday »

ในช่องเซลล์ B3 ควรทำงานอัตโนมัติครับ เมื่อเราเลือกจังหวัด ในช่องเซลล์ A3 ให้ช่องเซลล์ B3 ควรแสดงเฉพาะเขต/อำเภอ ที่มีทั้งหมดในจังหวัดนั้นๆ ครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: VLOOKUP

#4

Post by DhitiBank »

หมายถึงว่าให้เซลล์ B3 เป็น drop down list รายชื่อเขตทั้งหมดของจังหวัดในเซลล์ A3 ใช่ไหมครับ
NEO889
Member
Member
Posts: 122
Joined: Thu Dec 06, 2012 6:39 pm
Location: นครนายก

Re: VLOOKUP

#5

Post by NEO889 »

ลองใช้ Pivot ดูครับ
You do not have the required permissions to view the files attached to this post.
liveday
Bronze
Bronze
Posts: 286
Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007

Re: VLOOKUP

#6

Post by liveday »

DhitiBank wrote:หมายถึงว่าให้เซลล์ B3 เป็น drop down list รายชื่อเขตทั้งหมดของจังหวัดในเซลล์ A3 ใช่ไหมครับ
ใช่ครับ
liveday
Bronze
Bronze
Posts: 286
Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007

Re: VLOOKUP

#7

Post by liveday »

NEO889 wrote:ลองใช้ Pivot ดูครับ
พอดีผมจะไปต่อยอดใบเสร็จหน้าร้านครับ ใช้ pivot ผมไม่รู้ว่าจะวางส่วนไหนหน้าบิลครับ ขอลองทำ drop down list ดูก่อนนะครับ ขอบคุณครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: VLOOKUP

#8

Post by DhitiBank »

ทดลองแบบนี้ครับ
ก่อนอื่นขอให้คุณแยกเขตแต่ละจังหวัดออกให้อยู่คนละคอลัมน์ก่อน เพื่อความสะดวกในการทำ range name ครับ โดย คอลัมน์ H เป็นเลข 2, คอลัมน์ I เป็นเขตของจังหวัดปทุมธานี, คอลัมน์ J, K เป็นเลข 3 และเขตของจังหวัดอยุธยา ตามลำดับ

1.สร้าง range name
กด Ctrl+F3 แล้วกด New ครับ

1.1 ตั้งชื่อ _Province
ในช่องว่างคีย์สูตร
=OFFSET($E$2,0,0,MAX(1,COUNTA(E:E)))
แล้วกด ok ครับ เพื่อสร้าง dynamic range name ของจังหวัด และเผื่อมีการเพิ่มในภายหลัง

1.2 กด ctrl+F3 --> new
ตั้งชื่อ _z1
ในช่องว่างคีย์สูตร
=OFFSET($G$2,0,0,MAX(1,COUNTA(G:G)))
แล้วกด ok เพื่อสร้าง dynamic range name ของกรุงเทพ ทำแบบนี้เช่นกันกับอีก 2 ช่วงเขตที่เหลือ โดยเปลี่ยนอักษรสีแดงให้สอดคล้องกับข้อมูลเขตที่แยกคอลัมน์แล้ว และตั้งชื่อ range name ว่า _z2, _z3 ตามลำดับ
Last edited by DhitiBank on Fri Feb 27, 2015 12:11 pm, edited 2 times in total.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: VLOOKUP

#9

Post by DhitiBank »

2. คลิกเซลล์ A3 แล้วเลือก data validation...
ช่องประเภทของ validation เลือกเป็น list --> เอาติ๊กถูกตรง ignore blank ออก
ช่อง Source ให้คลิกที่ช่องนั้นแล้วกด F3 --> เลือก _Province
เพื่อเซลล์ A3 จะเป็น drop down ชื่อจังหวัดให้เลือก

3. ที่ C3 คีย์
=IF(A3="","",INDEX($D$2:$D$10,MATCH(A3,$E$2:$E$10,0)))
Enter

4. คลิกเลือก B3 แล้วเลือก data validation...
ทำเหมือนข้อ 2 ครับ แต่ตรง source ให้คีย์
=IF(C3=1,_z1,IF(C3=2,_z2,_z3))
แล้วกด Ok แล้วทดลองเลือกดูครับ ว่าใช่แบบที่ต้องการหรือไม่
liveday
Bronze
Bronze
Posts: 286
Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007

Re: VLOOKUP

#10

Post by liveday »

ทำได้แล้วครับ ขอบคุณสำหรับคำแนะนำทุกคนมากครับ
Last edited by liveday on Fri Feb 27, 2015 3:15 pm, edited 1 time in total.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: VLOOKUP

#11

Post by DhitiBank »

:) ที่เป็นเช่นนี้เพราะการกำหนดค่าใน Rang name ยังไม่ถูกต้องครับ สังเกตจากรูป
PicsArt_1425024213353.jpg
ยกตัวอย่าง range name _Province
ต้องปรับในส่วนสีแดง ให้สอดคล้องกับลูกศรครับ
MAX(1,COUNTA(คอลัมน์ที่บรรจุช่วงข้อมูลนั้นๆ))
ทีถูกต้องเป็น
MAX(1,COUNTA(Sheet1!E:E))

แก้ไข range name อื่นในทำนองเดียวกันครับ
You do not have the required permissions to view the files attached to this post.
Post Reply