リストボックスで選択されているデータを取得する


リストボックスで選択されているデータは、ListBoxのTextプロパティで取得できます。

Private Sub CommandButton1_Click()
    MsgBox ListBox1.Text
End Sub

選択されたデータを取得する方法は、ほかにもあります。

リストボックスに登録されているデータは、Listプロパティに配列形式で格納されています。したがって、何番目のデータが選択されているのかが分かれば、この配列から調べることも可能です。リストボックスで現在選択されている位置(何番目か)は、ListIndexプロパティで分かります。

Private Sub CommandButton1_Click()
    MsgBox ListBox1.List(ListBox1.ListIndex)
End Sub

ここでは、同じ結果になります。Visual Basic 2.0の頃からListBoxを操作していますが、昔はどの本もList(ListIndex)方式で解説されていました。もしかすると、昔のListBoxにはTextプロパティがなかったのでしょうか・・・ちょっと記憶にありません。なので、ずっと「選択されたデータを取得するにはList(LisntIndex)で」と教えてきましたが、最近は「でも、まぁ、Textプロパティの方が簡単だしな・・・」みたく考えを改めました。できれば、こっちも覚えておくといいですよ。