Home > 即効テクニック > Excel VBA > ユーザーフォーム関連のテクニック > 特定の列の値をユーザフォームのコンボボックスに重複を許可せずにリストアップする

即効テクニック

ユーザーフォーム関連のテクニック

特定の列の値をユーザフォームのコンボボックスに重複を許可せずにリストアップする

(Excel 97/2000)
サンプルマクロは、ユーザフォームのコンボボックスに、使用セル範囲の1列目のデータを、重複を許可せずに表示します。
ただし、AdvancedFilterメソッドを使用しているので、タイトル行が必要です。
Sub Sample()

Dim myCell As Range

    Application.ScreenUpdating = False
    ActiveSheet.UsedRange.Columns(1).AdvancedFilter xlFilterInPlace, , , True
    
    With ComboBox1
        For Each myCell In ActiveSheet.UsedRange.Columns(1) _
            .SpecialCells(xlCellTypeVisible)
            .AddItem myCell.Value
        Next
        .ListIndex = 0
    End With
    
    ActiveSheet.ShowAllData
    Application.ScreenUpdating = True
    
End Sub