КАК заполнить список с помощью SQL запросов (VBA) - PullRequest
0 голосов
/ 08 апреля 2020

У меня есть пользовательская форма с 3 текстовыми полями, кнопкой поиска и списком.

Я создал строку соединения с сервером sql для поиска записей и установил ее в электронной таблице, но я хочу заполнить записи в списке вместо листа

это моя строка подключения (сохранить как макрос)


    ( Public Sub T()
    '

    '
    '
        Application.CutCopyMode = False
        With ActiveWorkbook.Connections( _
            "LOCALHOST_SQLEXPRESS (db_name)").OLEDBConnection
            .BackgroundQuery = True
            .CommandText = Array( _
            "select * from ""db_name"".""dbo"".""'table_name'""" _
            )
            .CommandType = xlCmdSql
            .Connection = Array( _
            "OLEDB;Provider=SQLOLEDB.1;Password=123;Persist Security Info=false;User ID=abc;Initial Catalog=db_name;Data So" _
            , _
            "urce=LOCALHOST\SQLEXPRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=LOCALHOST" _
            , _
            "A;Use Encryption for Data=False;Tag with column collation when possible=False" _
            )
            .RefreshOnFileOpen = False
            .SavePassword = True
            .SourceConnectionFile = ""
            .SourceDataFile = ""
            .ServerCredentialsMethod = xlCredentialsMethodIntegrated
            .AlwaysUseConnectionFile = False
        End With
        With ActiveWorkbook.Connections( _
            "LOCALHOST_SQLEXPRESS db_name")
            .Name = "LOCALHOST_SQLEXPRESS db_name"
            .Description = ""
        End With

    End Sub

, и я установил это в кнопке поиска:

    dim searchwords as string 
    ' the value will populate in c4 
      searchkeywords = Sheets("sheet_name").Range("C4").Value 

     With ActiveWorkbook.Connections("connection string_name").OLEDBConnection
            .CommandText = "select * from [table_name] where column_name like '%" & searchkeywords & "%'"

           ActiveWorkbook.Connections("connection string_name").Refresh

          End With

Хорошо, теперь я хочу знать, как:

1 - заполнить результат поиска в списке вместо листа (vba)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...