powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Группировка в QueryTables
2 сообщений из 2, страница 1 из 1
Группировка в QueryTables
    #34589371
AlexanderKR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Скажите пожалуйста, возможен ли запрос с группировкой
в свойстве CommandText объекта QueryTables?

Потому что следующее выдает ошибку:

''''''''''''''''''''''''''''

strt1 = "SELECT AKT.KOD, AKT.KOD_T, Val(AKT.PR & str(AKT.KVT)) AS RASXOD, TARIF.ZNACH"
strt2 = "FROM " & the_file & " AKT LEFT JOIN TARIF TARIF ON AKT.KOD_T = TARIF.KOD"
strt3 = "WHERE (AKT.kod = '" & Trim(kod_pr) & "') AND (AKT.DATA = '" & date_of_akt & "')"
strt4 = "GROUP BY TARIF.KOD"

With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=Файлы dBASE;DefaultDir=" & path_of_base & ";DriverId=533;MaxBufferSize=2048;PageTimeout=5;" _
, Destination:=Workbooks("Akt").Worksheets("tarifs").Range("a1"))
.CommandText = strt1 & Chr(13) & Chr(10) & strt2 & Chr(13) & Chr(10) & strt3 & Chr(13) & Chr(10) & strt4
.Name = "Тарифы"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With

''''''''''''''''''''''''''''''''''

Если вместо GROUP BY пишу ORDER BY - все нормально.
Где ошибка?
Спасибо.
...
Рейтинг: 0 / 0
Группировка в QueryTables
    #34589977
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanderKRСкажите пожалуйста, возможен ли запрос с группировкой в свойстве CommandText объекта QueryTables?Любой корректный SQL возвращающий резалтсет может быть использован в QueryTable.

Код: plaintext
1.
2.
3.
     strt1 = "SELECT AKT.KOD, AKT.KOD_T, Val(AKT.PR & str(AKT.KVT)) AS RASXOD, TARIF.ZNACH"
     strt2 = "FROM " & the_file & " AKT LEFT JOIN TARIF TARIF ON AKT.KOD_T = TARIF.KOD"
     strt3 = "WHERE (AKT.kod = '" & Trim(kod_pr) & "') AND (AKT.DATA = '" & date_of_akt & "')"
     strt4 = "GROUP BY TARIF.KOD"
КАШМАР!
Возьми учебник по SQL, прочитай что делает и GROUP BY и когда оно применяется.

На будущее, прежде чем издеваться на Экселем и QueryTables подключись к своей БД через какой-нибудь isql и отладь запрос в нем. Хотя бы будешь видеть правильную sql-ругань на ошибки в запросе.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Группировка в QueryTables
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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