Vlookup VBA Excel - Truy vấn tra cứu thông tin trên UserForm

Với bảng tính Excel thật để dàng dùng hàm Vlookup, Hlookup để tra cứu tìm và đưa ra kết quả theo yêu cầu. Cú pháp đơn giản là VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup]). Tuy nhiên trong VBA Excel không đơn giản như vậy, có chút phức tạp hơn. Hãy tìm hiểu trong ví dụ dưới đây để khai thác nó.

Ví dụ ta cần lấy thông tin khách hàng từ mã khách hàng được tạo từ bảng DanhMucKhachHang

Vlookup VBA Excel - Truy vấn tra cứu thông tin trên UserForm

Thông tin về khách hàng được lấy từ sheet(DMKH)

Vlookup VBA Excel - Truy vấn tra cứu thông tin trên UserForm

Đặt tên cho các texbox

- Đặt tên cho Combobox    cbx_ma_khachhang
Vlookup VBA Excel - Truy vấn tra cứu thông tin trên UserForm
- Đặt tên cho 02 textbox
+ txt_hoten_kh
+ txt_diachi_kh
Vlookup VBA Excel - Truy vấn tra cứu thông tin trên UserForm

Xong phần thiết kế UserForm ta đến viết code lấy thông tin từ combobox điền vào 02 textbox (txt_hoten_kh; txt_diachi_kh)

'goi y hien thi ten khach hang va dia chi khach hang
Private Sub cbx_ma_khachhang_DropButtonClick()
Dim i As Long, LastRow As Long
LastRow = Sheets("DMKH").Range("A" & Rows.Count).End(xlUp).Row
If Me.cbx_ma_khachhang.ListCount = 0 Then
For i = 2 To LastRow
Me.cbx_ma_khachhang.AddItem Sheets("DMKH").Cells(i, "A").Value
Next i
End If
End Sub

Private Sub cbx_ma_khachhang_Change()
Dim i As Long, LastRow As Long
LastRow = Sheets("DMKH").Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To LastRow
If Sheets("DMKH").Cells(i, "A").Value = (Me.cbx_ma_khachhang) Or _
Sheets("DMKH").Cells(i, "A").Value = Val(Me.cbx_ma_khachhang) Then
Me.txt_hoten_kh = Sheets("DMKH").Cells(i, "B").Value
Me.txt_diachi_kh = Sheets("DMKH").Cells(i, "C").Value
End If
Next
End Sub

Đăng nhận xét

0 Nhận xét