解答が少ないようなので解答を上げます。初歩的なやり方
ですので、ご存知でしたらごめんなさい。
リストボックスのアイテムの数が少ない時の例ですが。
エクセルのVBAでテストしたもんですから、 Worksheets("sheet1")の部分はForm1とかUserForm1とかの
Objectに変えて下さい。項目が多くなるとDBとSQLとリストボックス連動出来ればと思いますが、取りあえず。
リストボックスをForm1等に2つに貼りつけて下さい。
Moduleに
Sub test01()
For i = 0 To Worksheets("sheet1").ListBox2.ListCount - 1
Worksheets("sheet1").ListBox2.RemoveItem 0
Next i
'----
a = Array("東京", "神奈川", "埼玉", "千葉", "群馬", "栃木")
For i = 0 To Ubound(a)
Worksheets("sheet1").ListBox2.AddItem a(i)
Next i
End Sub
リストボックスのイベントプロシージャーに
Private Sub ListBox2_Click()
Dim b1(5),b2(5),b3(5),b4(5),b5(5),b6(5) As String
b1 = Array("中央区", "武蔵野市", "三鷹市")
b2 = Array("横浜市", "藤沢市", "相模原市", "平塚市")
b3 = Array("さいたま市", "川口市", "朝霞市", "和光市")
b4 = Array("千葉市", "船橋市", "浦安市", "習志野市")
' MsgBox ListBox2.List(ListBox2.ListIndex)
a = ListBox2.ListIndex
' MsgBox a
For j = 1 To ListBox1.ListCount
ListBox1.RemoveItem 0
Next j
'-----
Select Case a
Case "0"
'MsgBox "東京"
For j = 0 To UBound(b1)
ListBox1.AddItem b1(j)
Next j
Case "1"
'MsgBox "神奈川"
For j = 0 To UBound(b2)
ListBox1.AddItem b2(j)
Next j
Case "2"
'MsgBox "埼玉"
For j = 0 To UBound(b3)
ListBox1.AddItem b3(j)
Next j
Case "3"
'MsgBox "千葉"
For j = 0 To UBound(b4)
ListBox1.AddItem b4(j)
Next j
Case "4"
MsgBox "群馬"
Case "5"
MsgBox "栃木"
End Select
End Sub
群馬、栃木は手を抜いています。
お礼
まさにそのような使い方をしようとしていました。 VBAについてもうすこし勉強しようと思います。ありがとうございました。