サンプルマクロは、アクティブシートのA列(タイトル要)のデータを
ユーザフォームのリストボックスに重複させず、昇順に表示します。
フォームのコードウインドに記述して実行します。
Sub Sample()
Dim myValue As Variant
Dim myRng As Range, myCell As Range
Set myRng = Range(Range("A1"), Cells(Rows.Count, 1).End(xlUp))
myValue = myRng.Value
Application.ScreenUpdating = False
myRng.Sort Range("A1"), xlAscending, Header:=xlYes
myRng.AdvancedFilter xlFilterInPlace, , , True
With ListBox1
.Clear
For Each myCell In myRng.Resize(myRng.Rows.Count - 1).Offset(1) _
.SpecialCells(xlCellTypeVisible)
.AddItem myCell.Value
Next
.ListIndex = 0
End With
ActiveSheet.ShowAllData
myRng.Value = myValue
Application.ScreenUpdating = True
End Sub
|