powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите прицепиться к SQL серверу из VBA for Excel
3 сообщений из 3, страница 1 из 1
Помогите прицепиться к SQL серверу из VBA for Excel
    #32398863
Shcegolev Anton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подсказали мне тут на форуме по SQL процедуру, но она выдает ошибку. А я в VBA не силен. Помогите чем сможете...


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Public Sub GetSQLData(stSQL As String, stBooksName As String, stSheetName As String, stRangeName As String, stCellName As String, stQueryName As String)
Dim RS1 As New ADODB.Recordset

OpenConnection (Null)
Set COM = New ADODB.Command
COM.ActiveConnection = CON
COM.CommandText = stSQL
Set RS = COM.Execute

Workbooks(stBooksName).Sheets(stSheetName).Range(stRangeName).ClearContents
With Workbooks(stBooksName).Sheets(stSheetName).QueryTables.Add(RS, Sheets(stSheetName).Range(stCellName))
.Name = stQueryName
.RefreshStyle = xlInsertEntireRows
.BackgroundQuery = True
.Refresh
End With
RS.Close


Ошибка "Sub or Function not defined" на строке
Код: plaintext
OpenConnection (Null)

Что не так ?
...
Рейтинг: 0 / 0
Помогите прицепиться к SQL серверу из VBA for Excel
    #32398865
Shcegolev Anton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения: во второй строке текста вместо "RS1" -- "RS"
...
Рейтинг: 0 / 0
Помогите прицепиться к SQL серверу из VBA for Excel
    #32398964
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OPenConnection(null) - это вызов процедуры которая открвает CON для доступа у БД у вас такой процедуры нет так что :(
могу предложить свою
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
public CON  as ADODB.Connection
Public Sub OpenConnection   
  Set CON = Nothing
  Set CON = New ADODB.Connection
  On Error GoTo errH:
  With CON 
    .Provider =  "SQLOLEDB" 
    .ConnectionTimeout =  20 
    .CommandTimeout =  20 
    .Properties( "Data Source" ).Value = "(local)"  ' SQL сервер
    .Properties("Initial Catalog").Value = "DB" ' база данных
    .Properties( "User ID" ).Value =  "user"  ' ваш логин
    .Properties("Password").Value = "password" ' ваш пароль
    .Open
  End With
  Exit Function
errH:
MsgBox  "Error"  & Err.Description
end sub

и не забудьте что вышеуказанный код сработает только для смешанной аутентификации.
В своем коде меняете вызов OPenConnection(null) на CALL OPenConnection.
Не забудьте вставить определение public CON as ADODB.Connection
в самое начало модуля ( или листа или формы).
Удачи

...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите прицепиться к SQL серверу из VBA for Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]