前提・実現したいこと
初めて投稿させて頂きます。
VBAで2つのリストボックスを連動させました。
2つ目のリストボックスで複数列を表示させようとした際、エラーが発生してしました。
(画像は架空の個人情報です)
発生している問題・エラーメッセージ
実行時エラー'381': listプロパティを設定できません。プロパティの配列のインデックスが無効です。
該当のソースコード
VBA
1Private Sub UserForm_Initialize() 2 Dim i As Long 3 Dim lastRow As Long 4 With ListBox1 5 6 .Clear 7 .ColumnCount = 2 8 .ColumnWidths = 20 9 End With 10 With Worksheets("リスト1") 11 For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row 12 ListBox1.AddItem Cells(i, 1) 13 ListBox1.List(i - 2, 1) = .Cells(i, 2) 14 Next 15 ListBox1.ListIndex = 0 16 End With 17End Sub 18 19Private Sub ListBox1_Click() 20 Dim i As Long 21 ListBox2.Clear 22 With Worksheets("リスト1") 23 For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row 24 If ListBox1.Text = .Cells(i, 1) Then 25 ListBox2.AddItem .Cells(i, 3) 26 'ListBox2.List(i - 2, 1) = .Cells(i, 4) ここでエラーになる 27 End If 28 Next 29 End With 30End Sub
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/12 09:04