備忘録記事です。MicrosoftAccessのフォーム、複数選択可能なリストボックスコントロールに値を入力したい場合のVBAコードサンプル。
前提
図のようにフォームに複数選択できるリストボックスがある。このリストボックスの選択値を「りんご」と「ばなな」にしていする処理をVBAで書く。
処理としては、「Cmd1(「値を入力」ボタン)」をクリックした際に処理が行われるという前提で書いている。
Private Sub Cmd1_Click()
Dim pStrMyString As String, pStrValue As Variant, _
pLngCNT As Long, pLngListCnt As Long
Call ClearListBox
pStrMyString = "りんご,ばなな"
pStrValue = Split(pStrMyString, ",")
For pLngCNT = 0 To UBound(pStrValue)
For pLngListCnt = 0 To 3
If Me.List1.Column(0, pLngListCnt) = pStrValue(pLngCNT) Then
Me.List1.Selected(pLngListCnt) = True
End If
Next pLngListCnt
Next pLngCNT
End Sub
----------------------------------------
Private Sub ClearListBox()
Dim pLngCNT As Long
For pLngCNT = 0 To Me.List1.ListCount - 1
Me.List1.Selected(pLngCNT) = False
Next pLngCNT
End Sub

コメントを投稿するにはログインしてください。