リストボックスに登録するデータのリストを事前に作成しておきます。ここではSheet2に作成しました。
リボンの[開発]-[挿入]-[リストボックス]をクリックします。
シート上をドラッグし配置します。
Workbookが開くときに発生するOpenイベント内に下記のコードを入力します。
Private Sub Workbook_Open()
Dim i As Integer
i = 2
Do Until Worksheets("Sheet2").Cells(i, 2).Value = ""
Sheets("Sheet1").ListBox1.AddItem Worksheets("Sheet2").Cells(i, 2).Value
i = i + 1
Loop
End Sub
事前に作成したSheet2のデータを、上からループで順に リストボックスに追加しています。項目の追加はAddItemを使用しています。
マクロ有効ブックで保存し、再度開きます。するとSheet2のデータが表示され選択できるようになります。
リストボックスをクリックすると、指定したセルに表示させるコードを入力します。
Private Sub ListBox1_Click()
With ListBox1
If .ListIndex > -1 Then
Range("F3") = .ListIndex + 1
Range("F4") = .Value
End If
End With
End Sub
- クリックした項目の行を取得するには、ListIndexを使用します。
- クリックした項目の値を取得するには、Valueを使用します。