Chào thầy, em có 2 combobox phụ thuộc lẫn nhau. Làm thế nào để hiện kết quả vào 1 ô textbox bất kỳ khi chọn xong combobox ạ? Em làm thử nhưng bị báo lỗi. Cám ơn thầy rất nhiều ạ.

Trong file của bạn mình hình dung như sau:
- Khi chọn Lớp => combobox Họ tên sẽ hiển thị danh sách học sinh trong lớp đó (chứ không phải toàn bộ danh sách học viên).
Bạn có thể làm theo cách sau đây:
Bước 1: Chuẩn bị danh sách nạp vào combobox Họ tên.
Để có danh sách này bạn cần biết vị trí danh sách này nằm ở đâu.
Ví dụ: Lớp 9A4 lấy theo danh sách ở Sheet IN-TS10, vùng C121:C165
Vấn đề là làm sao xác định được vùng này?
Dựa vào nội dung chọn ở combobox Lớp => Khi chọn combobox này, bạn gán giá trị được chọn vào 1 ô nào đó trong Sheet. Ví dụ: gán vào ô BK1 trong sheet IN-TS10
Private Sub cb_Lop_Change
Sheets("IN-TS10").Range("BK1").Value = Me.cb_Lop.Value
End Sub
Dùng hàm MATCH tìm vị trí điểm bắt đầu của Lớp trong danh sách lớp tại Sheet IN-TS10 (cột A)
Điểm đầu ô BK2 đặt công thức =MATCH(BK1, C1:C516, 0)
Điểm cuối ô BK3 đặt công thức =COUNTIF(C1:C516, BK1) + BK2
Như vậy vùng danh sách là:
Dim DiemBatDau as Long
Dim DiemKetThuc as Long
DiemBatDau = Sheets("IN-TS10").Range("BK2").Value
DiemKetThuc = Sheets("IN-TS10").Range("BK3").Value
Dim VungDanhSach as Range
Set VungDanhSach = Sheets("IN-TS10").Range("C" & DiemBatDau & ":" & "C" & DiemKetThuc)
code này sẽ đặt luôn trong sub cb_Lop_Change ở trên nhé.
Bước 2: nạp danh sách vào combobox Họ tên
Vẫn trong sự kiện cb_Lop_Change sẽ nạp danh sách vào cb_HoTen
Code nạp danh sách thì bạn đã biết rồi. Vùng danh sách đã có ở trên rồi. Chỉ cần viết tiếp vào là được.
Quan trọng là nó diễn ra ở sự kiện cb_Lop_Change chứ ko phải ở UserForm_Initialize
Lưu ý thêm 1 chút nữa: Sheet IN-TS10 phải được sắp xếp theo thứ tự Lớp thì mới dùng được hàm MATCH, COUNTIF chính xác. Do đó bạn có thể record 1 macro về sắp xếp, chạy macro này trước khi gán giá trị của cb_Lop vào ô BK1.
Cám ơn thầy rất nhiều ạ, bài hướng dẫn rất là chi tiết ạ. Em đã may mắn chọn đúng nơi cần học. Cảm ơn thầy.