0

変更イベントで使用すると、メソッドに問題がありcombobox.DropDown、スクロールバーで1つの結果のみが表示され、他の結果が表示されます。

Private Sub emp_name_Change()
    Call Connect_to_db

    strSQL = "SELECT [Name] , [ID] FROM Table2 where [Name] Like '%" & emp_name & "%' Order By [Name]; "

    rs.Open strSQL, cn

    If rs.bof = True Or rs.EOF = True Then
        MsgBox ("No records found")
    Else
        rs.MoveFirst
    End If

    With emp_name
        .Clear
        Do While Not rs.EOF
            .AddItem rs.Fields(0).Value
            rs.MoveNext
        Loop
    End With

    Call Close_db

    emp_name.DropDown
End Sub
4

2 に答える 2

1

部品の内側に変更Private Sub emp_name_Change()Private Sub emp_name_Click()て移動With emp_nameElse

これを試してください(未テスト

Private Sub emp_name_Click()
    Call Connect_to_db

    strSQL = "SELECT [Name] , [ID] FROM Table2 where [Name] Like '%" & emp_name & "%' Order By [Name]; "

    rs.Open strSQL, cn

    If rs.bof = True Or rs.EOF = True Then
        MsgBox ("No records found")
    Else
        rs.MoveFirst

        With emp_name
            .Clear
            Do While Not rs.EOF
                .AddItem rs.Fields(0).Value
                rs.MoveNext
            Loop
        End With
    End If

    Call Close_db

    emp_name.DropDown
End Sub
于 2013-11-10T09:42:32.157 に答える
0

はい、変更イベントでこれを作成する必要があります..文字を入力するコンボボックスを作成しようとしていますが、リストにはその文字で始まるエントリのみが表示されます。

ファイルを開いて事前フィルターを使用すると、データ全体を取得できます。これは最善の方法ですか?

于 2013-11-13T09:32:03.050 に答える