nguyenvannam.0910
Thành viên mới
- Tham gia
- 17/9/21
- Bài viết
- 2
- Được thích
- 1
STT, Ngày, Hãng, Sản phẩm bạn nên tạo bằng cái khác chứ ai tạo bằng textbox thế kiaEm chào các anh (chị) trong diễn đàn, như tiêu đề e muốn nhờ các anh (chị) giúp cho về vấn đề 2 combobox phụ thuộc nhau. Em có tải file mẫu lên để anh (chị) xem giúp. Em cảm ơn ạ
Đây nhé bạn, combobox chọn hãng nào thì combobox sản phẩm sẽ ra sản phẩm tương ứng:Em chào các anh (chị) trong diễn đàn, như tiêu đề e muốn nhờ các anh (chị) giúp cho về vấn đề 2 combobox phụ thuộc nhau. Em có tải file mẫu lên để anh (chị) xem giúp. Em cảm ơn ạ
Private priArrData
Private Sub UserForm_Initialize()
Dim e As Long
Dim shData As Worksheet
Set shData = Sheets("Data")
e = shData.Range("G" & shData.Rows.Count).End(xlUp).Row
cmb_hang.List = shData.Range("G2:G" & e).Value
e = shData.Range("A" & shData.Rows.Count).End(xlUp).Row
cmb_sanpham.List = shData.Range("A2:B" & e).Value
priArrData = cmb_sanpham.Column
cmb_sanpham.Clear
End Sub
Private Sub cmb_hang_Change()
cmb_sanpham.Text = ""
cmb_sanpham.Clear
If cmb_hang.MatchFound Then
Dim arrSanPham()
Dim n As Long, r As Long, u As Long
u = UBound(priArrData, 2)
For r = 0 To u
If priArrData(0, r) = cmb_hang.Text Then
ReDim Preserve arrSanPham(0 To 0, 0 To n)
arrSanPham(0, n) = priArrData(1, r)
n = n + 1
End If
Next
cmb_sanpham.Column = arrSanPham
End If
End Sub
Em cảm ơn anh ạThêm 1 cách nè & tiết kiệm được 1 nút lệnh
. . . . . . . . . . . . . .. . . . . . . . .
Em cảm ơn anh ạĐây nhé bạn, combobox chọn hãng nào thì combobox sản phẩm sẽ ra sản phẩm tương ứng:
Mã:Private priArrData Private Sub UserForm_Initialize() Dim e As Long Dim shData As Worksheet Set shData = Sheets("Data") e = shData.Range("G" & shData.Rows.Count).End(xlUp).Row cmb_hang.List = shData.Range("G2:G" & e).Value e = shData.Range("A" & shData.Rows.Count).End(xlUp).Row cmb_sanpham.List = shData.Range("A2:B" & e).Value priArrData = cmb_sanpham.Column cmb_sanpham.Clear End Sub Private Sub cmb_hang_Change() cmb_sanpham.Text = "" cmb_sanpham.Clear If cmb_hang.MatchFound Then Dim arrSanPham() Dim n As Long, r As Long, u As Long u = UBound(priArrData, 2) For r = 0 To u If priArrData(0, r) = cmb_hang.Text Then ReDim Preserve arrSanPham(0 To 0, 0 To n) arrSanPham(0, n) = priArrData(1, r) n = n + 1 End If Next cmb_sanpham.Column = arrSanPham End If End Sub