Найти тему
Маленький человек

Подключение к базе данных VBA

Postgresql

требуется настроеный ODBC

Sub sql_code()
Set ws = Application.ActiveSheet
Set ADO_Connect = CreateObject("ADODB.Connection")
sqlstr = ws.Cells(1, 1) ' здесь написана сам SQL код
sqlstr = "SELECT * FROM public.""ContractsType"" "

    ADO_Connect.ConnectionString = "Driver={PostgreSQL UNICODE(x64)};Server=*;Port=*;Database=*;UID=*;Pwd=*"
    ADO_Connect.Mode = adModeReadWrite
    ADO_Connect.Open

    Set rs = ADO_Connect.Execute(sqlstr) '
    count_rows = rs.Fields.Count

    For i = 1 To count_rows
       ws.Cells(2, i + 4).Value = rs.Fields(i - 1).Name
    Next i
    ws.Cells(3, 5).CopyFromRecordset rs

ClearMemory:
    rs.Close
    ADO_Connect.Close
    Set rs = Nothing
    Set ADO_Connect = Nothing
End Sub