Nhờ giúp đỡ về hàm vlookup trong form

Liên hệ QC

SoGoKu7

Thành viên chính thức
Tham gia
4/9/21
Bài viết
62
Được thích
13
Giới tính
Nữ
Em chào cả nhà!
Nhờ anh/chị chỉnh sửa giúp em hàm vlookup trong form không ra kết quả.
code trong file của em là

Mã:
Private Sub UserForm_Initialize()
Dim Lr&, Lr0&, Rng As Range
On Error Resume Next
With SOURCE
Lr0 = .Range("A" & Rows.Count).End(xlUp).Row
Lr = .Range("C" & Rows.Count).End(xlUp).Row
Set Rng = .Range("C2:G" & Lr)
cbb_ngay_out.List = .Range("A2:A" & Lr0).Value
cbb2_masp_out.List = .Range("C2:C" & Lr).Value
list_mahang_out.Text = WorksheetFunction.VLookup(cbb2_masp_out.Text, Rng, 2, False)
End With
Set Rng = Nothing
End Sub
trong đó:
list_mahang_out là listbox (lấy tên mã sản phẩm)
cbb2_masp_out là combobox (mã sản phẩm)
Rng là sheets("Source").range("C2:G" & lr)
Cảm ơn anh/chị đã đọc bài!
 

File đính kèm

  • Out_In.xlsb
    32.3 KB · Đọc: 10
Bạn thử với con ni, rồi tính tiếp:
PHP:
Private Sub UserForm_Initialize()
 Dim lRs&, lRa&, Rng As Range
 On Error GoTo LoiCT
 With SOURCE
    lRa = .Range("A" & Rows.Count).End(xlUp).Row
    lRs = .Range("C" & Rows.Count).End(xlUp).Row
    Set Rng = .Range("C2:G" & lRs)
    cbb_ngay_out.List = .Range("A2:A" & lRa).Value
    cbb2_masp_out.List = .Range("C2:C" & lRs).Value
    list_mahang_out.Text = WorksheetFunction.VLookup(cbb2_masp_out.Text, Rng, 2, False)
 End With
Set Rng = Nothing
Err_:           Exit Sub
LoiCT:
    MsgBox Err, , Error()
    Resume Err_
End Sub
 
Upvote 0
Em chào cả nhà!
Nhờ anh/chị chỉnh sửa giúp em hàm vlookup trong form không ra kết quả.
code trong file của em là

Mã:
Private Sub UserForm_Initialize()
Dim Lr&, Lr0&, Rng As Range
On Error Resume Next
With SOURCE
Lr0 = .Range("A" & Rows.Count).End(xlUp).Row
Lr = .Range("C" & Rows.Count).End(xlUp).Row
Set Rng = .Range("C2:G" & Lr)
cbb_ngay_out.List = .Range("A2:A" & Lr0).Value
cbb2_masp_out.List = .Range("C2:C" & Lr).Value
list_mahang_out.Text = WorksheetFunction.VLookup(cbb2_masp_out.Text, Rng, 2, False)
End With
Set Rng = Nothing
End Sub
trong đó:
list_mahang_out là listbox (lấy tên mã sản phẩm)
cbb2_masp_out là combobox (mã sản phẩm)
Rng là sheets("Source").range("C2:G" & lr)
Cảm ơn anh/chị đã đọc bài!
Sai cơ bản mà bạn.Mà bạn muốn kết quả thể hiện thế nào.Hoặc dùng thử cái này.
Liên kết: https://youtu.be/MoZfJ5dBr6Y
 
Upvote 0
Bạn thử với con ni, rồi tính tiếp:
PHP:
Private Sub UserForm_Initialize()
 Dim lRs&, lRa&, Rng As Range
 On Error GoTo LoiCT
 With SOURCE
    lRa = .Range("A" & Rows.Count).End(xlUp).Row
    lRs = .Range("C" & Rows.Count).End(xlUp).Row
    Set Rng = .Range("C2:G" & lRs)
    cbb_ngay_out.List = .Range("A2:A" & lRa).Value
    cbb2_masp_out.List = .Range("C2:C" & lRs).Value
    list_mahang_out.Text = WorksheetFunction.VLookup(cbb2_masp_out.Text, Rng, 2, False)
 End With
Set Rng = Nothing
Err_:           Exit Sub
LoiCT:
    MsgBox Err, , Error()
    Resume Err_
End Sub
Lỗi 1004 anh ạ, anh hướng dẫn em xử lý với.
 
Upvote 0
dạ, kết quả mong muốn là ở tên sản phẩm trên form hiện kết quả của hàm dò tim vlookup đó anh.
ví dụ mã sản phẩm là A1
thì tên sản phẩm là B1 ạ!
Thử code này và bổ sung thêm.
Mã:
Private Sub cbb2_masp_out_Change()
        Dim i As Long, lr As Long, arr, dk As String
        dk = cbb2_masp_out.Value
        With Sheets("source")
             lr = .Range("C" & Rows.Count).End(xlUp).Row
             arr = .Range("C2:G" & lr).Value
             For i = 1 To UBound(arr)
                 If arr(i, 1) = dk Then
                    txt1_tensp_out = arr(i, 2)
                    TextBox1.Value = arr(i, 3)
                    Exit For
                 End If
             Next i
        End With
End Sub
 
Upvote 0
(1) 1004 là mã lỗi, còn nội dung lỗi là gì?
(2) Tìm dòng đang lỗi:
PHP:
Private Sub UserForm_Initialize()
 Dim lRs&, lRa&, Rng As Range
 On Error GoTo LoiCT
 With SOURCE
    lRa = .Range("A" & Rows.Count).End(xlUp).Row
    lRs = .Range("C" & Rows.Count).End(xlUp).Row
1    Set Rng = .Range("C2:G" & lRs)
 2   cbb_ngay_out.List = .Range("A2:A" & lRa).Value
 3   cbb2_masp_out.List = .Range("C2:C" & lRs).Value
4    list_mahang_out.Text = WorksheetFunction.VLookup(cbb2_masp_out.Text, Rng, 2, False)
 End With
Set Rng = Nothing
Err_:           Exit Sub
LoiCT:
    MsgBox Erl, , Error()
    Resume Err_
End Sub
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom