投稿者 ロト君  (社会人) 投稿日時 2020/5/9 09:31:07
環境 ---
Visual Basic 2019
Windows10

内容 ---
Private Sub Cmb_set(ByVal cmb_name As String, ByVal cmb_str As String)
で、下記の様なコンボボックスを作成したいです。

コード ---
1)

Cmb_set("Cmb_class", "区分")

2)

    Private Sub Cmb_set(ByVal cmb_name As String, ByVal cmb_str As String)

        Try

            connect.ConnectionString = conections_str
            connect.Open()

            Dim oda As New OleDbDataAdapter
            Dim ods As New DataSet
            Dim sql As String

            sql = "Select "
            sql &= "key_name, "
            sql &= "name1, "
            sql &= "value1, "
            sql &= "sort, "
            sql &= "delflg "
            sql &= "From m_env "
            sql &= "Where delflg = 0 "
            sql &= "And key_name = '" & cmb_str & "' "
            sql &= "Order By sort Asc"

            oda = New OleDbDataAdapter(sql, connect)
            ods.Tables.Add("m_env")
            oda.Fill(ods.Tables("m_env"))

            cmb_name.DataSource = ods.Tables("m_env")
            cmb_name.DisplayMember = "name1"
            cmb_name.ValueMember = "value1"

            'ComboBox のスタイルを指定します
            cmb_name.DropDownStyle = ComboBoxStyle.DropDownList
            '先頭のアイテムを表示させる
            cmb_name.SelectedIndex = -1

            connect.Close()

        Catch ex As Exception

            MsgBox("接続エラーです。", vbOKOnly, "接続エラー")
            connect.Close()
            Exit Sub

        End Try

    End Sub

内容 ---

*.mdb内のm_envテーブルから、
区分のkey_nameだけを取り出して、sortの値でソートされた任意のコンボボックスを作成したいのですが、任意のコンボボックス名を指定する事が出来ません。

どなたか、ご教授お願いいたします。