สวัสดีครับอาจารย์ที่เคารพ
กระทู้นี้เป็นกระทู้แรกของผมครับ เพิ่งได้เริ่มหัดเขียน VBA ติดปัญหาหลายจุดเลยครับ พอแก้ได้บ้างไม่ได้บ้าง
ผมเลยอยากขอรบกวนอาจารย์สอบถามเรื่อง vlookup กับ name manage ใน VBA หน่อยครับ
ผมมี Code ตามด้านล่างครับ ผมต้องการให้ เมื่อผมเลือก combobox1 แล้ว ให้โปรแกรมค้นหาค่าใน sheets("list") แล้วคืนค่ากลับมาที่ Textbox 1-5 ครับ ตอนนี้หลังจากเลือกแล้วมันไม่แสดงผลครับ
ปล.ผมไม่ได้เรียนด้านการเขียนโปรแกรมมา ตอนนี้หาอ่านเองตามหนังสือและเวบไซต์ได้ 2 วันเต็ม หากผิดพลาดประการใด ขออภัยและขอรบกวนอาจารย์ช่วยชี้แนะด้วยครับ
Code: Select all
Private Sub ComboBox1_change() 'Reference combobox to textbox
Dim i As Integer
Application.EnableEvents = False
i = 3
While Sheets("List").Cells(i, 1).Value <> ""
If Sheets("List").Cells(i, 1).Value = ComboBox1.Value Then
'Range("Name") --> Name = Name manager are Range("A3:F7")
TextBox1.Value = Application.WorksheetFunction.VLookup(ComboBox1.Value, Sheets("list").Range("Name"), 2, False)
TextBox2.Value = Application.WorksheetFunction.VLookup(ComboBox1.Value, Sheets("list").Range("Name"), 3, False)
TextBox3.Value = Application.WorksheetFunction.VLookup(ComboBox1.Value, Sheets("list").Range("Name"), 4, False)
TextBox4.Value = Application.WorksheetFunction.VLookup(ComboBox1.Value, Sheets("list").Range("Name"), 5, False)
TextBox5.Value = Application.WorksheetFunction.VLookup(ComboBox1.Value, Sheets("list").Range("Name"), 6, False)
End If
i = i + 1
Wend
Application.EnableEvents = True
End Sub
แก้ไข - เพิ่มไฟล์แนบ (ไม่ได้ใช้ sheet InOut แล้วครับ เพราะย้ายมาใช้ user form แทน)