Option Explicit Private Sub UserForm_Initialize() Dim a As Object Dim t As ListObject Dim rr As Range, r As Range Dim s As String Set a = CreateObject("system.collections.arraylist") Set t = Worksheets("Sheet1").ListObjects("Table1") On Error Resume Next Set rr = t.DataBodyRange.Columns(1).SpecialCells(xlCellTypeVisible) On Error GoTo 0 If Not rr Is Nothing Then For Each r In rr s = CStr(r.Value) If Not a.contains(s) Then a.Add s End If Next a.Sort ComboBox1.List = a.toarray End If End Sub




Reply With Quote