powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / параметры запроса SQL
4 сообщений из 4, страница 1 из 1
параметры запроса SQL
    #36444671
NavDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую.
Есть задача выгружать данные с sql в excel
записал макрос подсоединения и селекта нужных данных:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Sub Macro1()
'
' Macro1 Macro
' Macro recorded 02.02.2010 by me
'

'
    With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
        "ODBC;DRIVER=SQL Server;SERVER=SERVERNAME;UID=;APP=Microsoft Office 2003;WSID=MYHOSTNAME;DATABASE=DBNAME;Trusted_Connection" _
        ), Array("=Yes")), Destination:=Range("B3"))
        .CommandText = Array( _
        "SELECT ""TableName"".Field1, ""TableName"".Field2, ""TableName"".Field3" & Chr( 13 ) & "" & Chr( 10 ) & "FROM DBNAME.dbo.""TableName"" ""TableName""" _
        )
        .Name = "Query from Tezd"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod =  0 
        .PreserveColumnInfo = True
        .Refresh BackgroundQuery:=False
    End With
End Sub
Но не пойму как добавить в условие определённое значение, т.е. нужно к селекту добавить WHERE [field] = val
где val - для разных пользователей разный.
подскажите плз. как это сделать.
буду весьма признателен.
...
Рейтинг: 0 / 0
параметры запроса SQL
    #36445482
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim val As String
val = "aaaa"
.CommandText = Array( _
        "SELECT ""TableName"".Field1, ""TableName"".Field2, ""TableName"".Field3" & Chr( 13 ) & "" & Chr( 10 ) & _
             "FROM DBNAME.dbo.""TableName"" ""TableName"" " & _
             "WHERE ""TableName"".""Val"" = '" & val & "'"
        )
...
Рейтинг: 0 / 0
параметры запроса SQL
    #36445789
NavDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl,

Спасибо, сам осилил (говорила мне мама: "учи офис"), я просто был не в курсе как задавать параметры запроса в excel, оказалось что через '[]' и указание ячейки моя задача решается на раз-два-три.
Вот урок который я постоянно забываю: каким бы себя не мнил спецом-не поленись заглянуть в простой хэлп для начала
...
Рейтинг: 0 / 0
параметры запроса SQL
    #36445951
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NavDevя просто был не в курсе как задавать параметры запроса в excel, оказалось что через '[]' и указание ячейки моя задача решается на раз-два-три.Вообще-то, квадратные скобки используются для создания именованых параметров. Для неименованых используется знак вопроса.
Код: plaintext
1.
select * from table where pk=[id]
select * from table where pk=?
В первом случае, при создании привязки параметра к ячейке Эксель покажет параметр как id. Во втором, будет безымянный нумерованый параметр.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / параметры запроса SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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