フォーム内操作

Access VBA フォーム リストボックスの作成

フォーム リストボックスの作成

フォーム内にリストボックス「リスト0」(非連結)を作成しておきます。
フォームのLoadイベントに以下のプログラムを記述します。

プログラムの例

Private Sub Form_Load()

Dim CN As ADODB.Connection
Dim RS As ADODB.Recordset

Set CN = CurrentProject.Connection
Set RS = New ADODB.Recordset

Me.リスト0.ColumnCount = 3                                ‘*1
Me.リスト0.ColumnWidths = “3.0cm;3.0cm;3.0cm”   ‘*2
Me.リスト0.RowSource = “社員コード;名前;性別”     ‘*3
Me.リスト0.RowSourceType = “値リスト”                ‘*4

RS.Open “T_社員マスタ2013”, CN, adOpenStatic, adLockOptimistic    ‘*5

Do Until RS.EOF         ‘*6

Me.リスト0.RowSource = Me.リスト0.RowSource & “;” & RS!社員コード & “;” & RS!名前 & “;” & RS!性別     ‘*7

RS.MoveNext
Loop

RS.Close: Set RS = Nothing
CN.Close: Set CN = Nothing

End Sub

プログラムの説明

*1 リストボックスの列数を設定します(3列)。

*2 リストボックスの列幅を設定します(各3cm)。

*3 リストボックスの列見出しを設定します。

*4 リストボックスの値集合タイプを設定します。

*5 テーブル「T_社員マスタ2013」を開きます。

*6 Do Loop処理を使用します。

*7 リストボックスの値集合ソースを設定します(開いたテーブルのデータ)。

↓フォームのデザインビューの状態です。

listbox01

↓フォームを開くとリストボックスにデータが表示されます。

listbox02

VBAで記述すれば、同じリストボックスを使用して中身のデータを入れ替えることも出来ます。

こちらの記事もおすすめ!