Nhờ giúp đỡ lọc danh sách phụ thuộc

Liên hệ QC

Thóc Sama

_/_/_/_/_/_/_/
Tham gia
23/7/16
Bài viết
565
Được thích
798
Giới tính
Nam
Nghề nghiệp
何でもする
Xin chào Anh/chị
Nhờ Anh/Chị hướng dẫn cách lấy danh sách phụ thuộc trong User Form
Cụ thể trong sheet [DAILY REPORT] tôi có User Form Data
khi chọn mã sp ở combobox1 ví dụ là J30CAB~ thì ở công đoạn phát sinh chỉ hiện những công đoạn của mã hàng CAB
Hiện tại tôi đang gom chung phần công đoạn phát sinh bao gồm tất cả các công đoạn của tất cả các sản phẩm.
Khi chọn một sản phẩm cụ thể mà phải nhìn tất cả các công đoạn của tất cả các sản phẩm thì nhìn hơi rối.
Rất mong nhận được sự giúp đỡ của Anh/Chị
 
Xin chào Anh/chị
Nhờ Anh/Chị hướng dẫn cách lấy danh sách phụ thuộc trong User Form
Cụ thể trong sheet [DAILY REPORT] tôi có User Form Data
khi chọn mã sp ở combobox1 ví dụ là J30CAB~ thì ở công đoạn phát sinh chỉ hiện những công đoạn của mã hàng CAB
Hiện tại tôi đang gom chung phần công đoạn phát sinh bao gồm tất cả các công đoạn của tất cả các sản phẩm.
Khi chọn một sản phẩm cụ thể mà phải nhìn tất cả các công đoạn của tất cả các sản phẩm thì nhìn hơi rối.
Rất mong nhận được sự giúp đỡ của Anh/Chị
Thêm code vào form
Mã:
Private Sub ComboBox1_Change()
  Dim SP$, arr(), res(), dic As Object, sR&, i&, k&
 
  SP = ComboBox1.Text
  If SP = Empty Then
    ComboBox8.List = Sheet6.Range("am9:am47").Value
  Else
    Set dic = CreateObject("scripting.dictionary")
    arr = Range("Q5", Range("S1000000").End(xlUp)).Value
    sR = UBound(arr)
    ReDim res(1 To sR)
    For i = 1 To sR
      If arr(i, 1) = SP Then
        If dic.exists(arr(i, 3)) = False Then
          k = k + 1
          res(k) = arr(i, 3)
          dic.Item(arr(i, 3)) = ""
        End If
      End If
    Next i
    If k Then
      ReDim Preserve res(1 To k)
      ComboBox8.List = res
    Else
      ComboBox8.Clear
    End If
  End If
  Set dic = Nothing
End Sub
 
Upvote 0
Thêm code vào form
Mã:
Private Sub ComboBox1_Change()
  Dim SP$, arr(), res(), dic As Object, sR&, i&, k&
 
  SP = ComboBox1.Text
  If SP = Empty Then
    ComboBox8.List = Sheet6.Range("am9:am47").Value
  Else
    Set dic = CreateObject("scripting.dictionary")
    arr = Range("Q5", Range("S1000000").End(xlUp)).Value
    sR = UBound(arr)
    ReDim res(1 To sR)
    For i = 1 To sR
      If arr(i, 1) = SP Then
        If dic.exists(arr(i, 3)) = False Then
          k = k + 1
          res(k) = arr(i, 3)
          dic.Item(arr(i, 3)) = ""
        End If
      End If
    Next i
    If k Then
      ReDim Preserve res(1 To k)
      ComboBox8.List = res
    Else
      ComboBox8.Clear
    End If
  End If
  Set dic = Nothing
End Sub
Em cảm ơn bác nhiều nhé!
 
Upvote 0
Web KT

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

Back
Top Bottom