Page 1 of 1
vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Wed Jan 30, 2019 12:44 am
by tulkavin
สอบถามหน่อยครับ
vba ที่ใช้เขียน vlookup ไล่ขั้นตอนยังไงร่อครับ
คือตอนนี้มาจนถึง vlookup ไปที่อีกไฟล์ ในแฟ้มเดียวกัน แต่มี2-3 worksheet
แล้ว vba ไม่รับค่าจากช่อง K10 มาเพื่อ lookup ข้อมูล
ไม่ทราบติดส่วนไหน รบกวนอาจารย์หน่อยครับ
ขอบคุณครับ
Re: vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Wed Jan 30, 2019 10:30 pm
by snasui
ตัวอย่างการปรับ Code ครับ
Code: Select all
'Other code
On Error Resume Next
With tb.Sheets("AllDream")
.Cells(8, "d") = Application.WorksheetFunction.VLookup(.Cells(10, "k"), myrange, 3, False)
End With
'Other code
Re: vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Thu Jan 31, 2019 2:00 am
by tulkavin
ขอบคุณครับ อาจารย์ แต่ว่าผลลัพธ์ยังไม่ออกมาน่ะครับ ช่อง C8 ยังไม่แสดงผลลัพธ์ที่ไป vlookup จากอีกไฟล์เลย
Dim path As String
path = Application.ActiveWorkbook.path <------เก็บพาทของไฟล์
Dim FileOpen As String
FileOpen = "1Bill_ProductIn_Customer.xlsx" <------เตรียมชื่อไฟล์
Dim myrange As Range, tb As Workbook
Set tb = ThisWorkbook
Set wb = Workbooks
Workbooks.Open path & "\" & FileOpen <------สั่งเปิดไฟล์
Sheets("Cus_Name").Activate <------สั่งชีทที่ต้องการไป lookup ให้ activate
Set myrange = ActiveSheet.Range("a:n") <------กำหนดส่วนที่จะ lookup
On Error Resume Next
With tb.Sheets("AllDream") <------กลับมาที่ไฟล์แรกและให้ชีทที่ต้องการทำงาน
Cells(d, 8) = Application.WorksheetFunction.VLookup(Cells(k, 10), myrange, 3, False) <------สั่ง Vlookup แต่ผลลัพธ์ไม่มาครับ
End With
wb.Close False
Re: vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Thu Jan 31, 2019 6:17 am
by snasui
tulkavin wrote: Thu Jan 31, 2019 2:00 am
Cells(d, 8) = Application.WorksheetFunction.VLookup(Cells(k, 10), myrange, 3, False)
บรรทัดนี้ยังไม่ได้แก้ให้เป็นตามที่ผมแจ้งไป กรุณาสังเกตให้ครบทุกอักขระว่าผมคีย์ไว้อย่างไร ควรคัดลอกไปวางแทนคีย์เองจะได้ไม่พลาดครับ
Re: vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Fri Feb 01, 2019 12:36 am
by tulkavin
มาละครับ ขอบคุณครับ
ผมดันแก้ไขเฉพาะส่วนในวงเล็บเอง
ควรจะ copy มาเลยใช่มั้ยครับ ขอโทษด้วยครับหากผิดกฏ
Re: vba ที่ใช้เขียน vlookup ติดตรงที่โค้ดไม่เอาข้อมูลมาค้นหาครับ
Posted: Fri Feb 01, 2019 7:08 am
by snasui
ไม่ได้มีกฎว่าต้อง Copy ไปใช้แทนการคีย์เข้าไปใหม่ แต่เพื่อลดความผิดพลาดและประหยัดเวลา สามารถ Copy ส่วนที่ได้รับคำตอบไปใช้ได้เลยครับ
กฎมีแค่ 6 ข้อตามด้านบน