Menu

Tự động điền dữ liệu vào UserForm dựa trên lựa chọn ComboBox

Sùng Khánh Thêu 06/06/2026 01:33 497 lượt xem 1 trả lời

Chào các bác, dạo này em đang vật lộn với việc làm sao để khi chọn một mã hàng trong ComboBox trên UserForm thì các thông tin khác của mã hàng đó (như tên hàng, đơn vị tính, giá bán) sẽ tự động điền vào các TextBox tương ứng. Em đã thử tìm hiểu trên mạng nhưng chưa thấy bài nào hướng dẫn chi tiết cách làm này.

Cụ thể, em có một danh sách mã hàng ở Sheet "DM_HangHoa" với các cột: Mã hàng, Tên hàng, Đơn vị tính, Giá bán. Em muốn khi người dùng chọn một "Mã hàng" từ ComboBox (tên là cboMaHang) trên UserForm, thì các TextBox là txtTenHang, txtDonViTinh, txtGiaBan sẽ được điền dữ liệu tương ứng.

Em đã thử dùng sự kiện Change của ComboBox nhưng chưa nghĩ ra cách lấy dữ liệu từ sheet một cách hiệu quả. Có bác nào có kinh nghiệm xử lý vụ này không ạ? Hoặc có thể chia sẻ một đoạn code mẫu để em tham khảo thì quý hóa lắm ạ.

Em xin cảm ơn!

4

Chào bạn,

Vụ này khá phổ biến và cũng không quá phức tạp đâu. Bạn có thể dùng sự kiện Change của cboMaHang. Mỗi khi người dùng chọn một mã hàng mới, sự kiện này sẽ kích hoạt.

Trong sự kiện đó, bạn chỉ cần lấy giá trị của cboMaHang.Value, sau đó dùng VLOOKUP (hoặc INDEX/MATCH cho linh hoạt hơn) để dò tìm các thông tin tương ứng trong sheet "DM_HangHoa" và gán vào các TextBox tương ứng. Đừng quên xử lý trường hợp mã hàng không tìm thấy nhé!

Bạn có thể chia sẻ thêm về cấu trúc sheet "DM_HangHoa" của bạn không? Để mình xem có thể gợi ý cách tối ưu hơn không.

2

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký