#281 リストボックスの複数選択項目を取得するには? フォーム、VBA

リストボックスでは、"複数選択"プロパティ"標準"または"拡張"に設定することによって、複数の項目を選択することができます。

複数選択しないプロパティ設定の場合には、リストボックスの名前を指定するだけでそこで選択された値を取得できますが、複数の選択項目を1つずつ取得するには、VBAのモジュールを使って次のように処理する必要があります。ここでは、リストボックスの名前を"lstリスト"とし、[OK]ボタンがクリックされたとき、選択値を順番にメッセージボックス表示します。
複数選択のリストボックスの例

【ItemsSelected コレクションを使った方法】
Private Sub OK_Click()

  Dim varItm As Variant

  With Me!lstリスト
    For Each varItm In .ItemsSelected
      MsgBox .ItemData(varItm)
    Next varItm
  End With

End Sub

【Selectedプロパティで選択/非選択をトレースする方法】
Private Sub OK_Click()

  Dim iintLoop As Integer

  With Me!lstリスト
    For iintLoop = 0 To .ListCount - 1
      If .Selected(iintLoop) Then
        MsgBox .ItemData(iintLoop)
      End If
    Next iintLoop
  End With

End Sub
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします
 

Copyright © T'sWare All rights reserved