トップ > 逆引きで学ぶ ユーザーフォーム&コントロール > 4-1 リストにセル範囲を設定する

4-1 リストにセル範囲を設定するコンボボックス   2021.11.16

目次  前頁   次頁  索引

RowSourceプロパティは、セル範囲をリストとして設定します。


プロパティウィンドウでの設定

シート名!セルアドレスを直接入力します。
【例】「Sheet1」シートのセル範囲[A1:A7] → Sheet1!A1:A7


サンプルコード①

コンボボックスに「Sheet1」シートのセル範囲[A1:A7]を設定する

Private Sub UserForm_Initialize()
    ComboBox1.RowSource = "Sheet1!A1:A7"
End Sub

サンプルコード②

「Sheet1」シートのデータが動的に増減する場合に 対応セル範囲を設定する

Private Sub UserForm_Initialize()
    Dim strAddress As String
    Dim r As Range
    strAddress = "Sheet1" '対象シート名
    With Worksheets(strAddress) 'A列のデータ範囲を取得
        Set r = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
    End With
    strAddress = strAddress & "!" & r.Address(False, False)
    ComboBox1.RowSource = strAddress
    Set r = Nothing
End Sub

ページトップへ戻る
Copyright(C) 2009- 坂江 保 All Rights Reserved.