ray88’s diary

お仕事で困ったとき用の自分用の覚書

AccessVBA リストボックス・コンボボックスに関するプロパティ

■RowSourceTypeプロパティ:リストボックスやコンボボックスに表示するソースのタイプを設定する。

設定値 説明
Table/Query テーブル、クエリ、SQLの結果をデータとして使用する
Value List 項目のリストをデータとして使用する
Field List フィールド名のリストをデータとして使用する

■RowSourceプロパティ:実際に表示するソースを設定する。

RowSourceTypeプロパティの設定値 RowSourceの設定値 説明
Table/Query テーブル名、クエリ名、SQL 元になるテーブル名などを指定する
Value List "値1;値1;値1......." 元になる値を「;(セミコロン)」で区切って指定する
Field List テーブル名、クエリ名、SQL フィールド名リストの元になるテーブル名などを指定する

【書式】

コントロール.RowSourceType = 設定値
コントロール.RowSource = 設定値

(例)以下はリストボックスのソース変更のコードだが、コンボボックスのプロパティや設定値はリストボックスと同じ

Private Sub btn8_Click() '[リストのソース変更]ボタン
    Select Case Me.frm1.Value
    Case Me.opt1.OptionValue
        Me.list1.RowSourceType = "Table/Query"
        Me.list1.RowSource = "T部署マスタ"
    Case Me.opt2.OptionValue
        Me.list1.RowSourceType = "Value List"
        Me.list1.RowSource = "Value1;Value2;Value3;Value4;Value5"
    Case Me.opt3.OptionValue
        Me.list1.RowSourceType = "Field List"
        Me.list1.RowSource = "T社員名簿"
    Case Else
        MsgBox "オプションが選択されていません"
    End Select
End Sub

f:id:ray88:20201121171756p:plain
f:id:ray88:20201121171901p:plain
f:id:ray88:20201121171943p:plain