powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
8 сообщений из 8, страница 1 из 1
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647183
whxzor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создал форму "Администратор" (по тз требуется на его вкладке сделать 2 отчёта)
и вот как раз с первым отчётом возникла небольшая проблема
создал 2 поля типа краткий формат даты
назвал их
"датаначало" и "датаконец"
и добавил кнопку, на нажатие которой висит такой код:

Public startdate As String
Public enddate As String

Private Sub Кнопка0_Click()
startdate = Me.датаначало
enddate = Me.датаконец

sqlperiod = "SELECT * FROM Бронирование WHERE (((Бронирование.[Дата бронирования]) Between #" & startdate & "# And #" & enddate & " 23:59:59#))"
DoCmd.RunSQL sqlperiod
End Sub

что не так делаю?
Если выводить с конкретными значениями этот запрос, то есть вставить даты Between #5/13/2018# And #5/19/2018 23:59:59# ,к примеру, то всё получается
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647184
whxzor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
whxzor sqlperiod = "SELECT * FROM Бронирование WHERE (((Бронирование.[Дата бронирования]) Between #" & startdate & "# And #" & enddate & " 23:59:59#))"

это заменил на
это:
(Т.к. тип string)
sqlperiod = "SELECT * FROM Бронирование WHERE (((Бронирование.[Дата бронирования]) Between #'" & startdate & "'# And #'" & enddate & "' 23:59:59#))"

и все равно не работает
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647185
whxzor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Теперь другой вопрос: как точки заменить на слеши в переменной startdate и enddate?
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647187
whxzor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
можно закрыть :D
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647192
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
whxzorможно закрыть :DСам с собой поговорил... Забавно. Но так и непонятно нашёл ли правильное решение
Навсякей оставлю правильное решение - http://www.sql.ru/faq/faq_topic.aspx?fid=157
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647193
whxzor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

Спасибо за ссылку, но в конце концов ничего и не вышло. Сформировал правильный SQL запрос через переменные, но VBA почему-то не хочет его выполнять.. То ли оттого, что нет списка с записями из табл Бронирование, то ли ещё от чего.
Решил создать доп. форму и там уже делать отбор записей по периоду. Но, к сожалению, пока не знаю как
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647197
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
whxzor,

авторsqlperiod = "SELECT * ....
DoCmd.RunSQL sqlperiod

это запрос на выборку, а значит его можно открыть docmd.openquery , но нельзя выполнить runsql
...
Рейтинг: 0 / 0
Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
    #39647201
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
whxzor,
Выдуржка из HELP:
инструкцияSQL: Строковое выражение, представляющее допустимую инструкцию SQL для запроса на изменение или управляющего запроса.
запрос на выборку(SELECT) не упоминается.
может сделать так:
Код: vbnet
1.
2.
Me.RecordSource="select * from tbl where  датаБронирования>=#" & format(me.start,"mm\/dd\/yy") &
 "# and датаБронирования<=#" & format(me.finish,"mm\/dd\/yy") & "#"

RecordSourse наше фсё
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка "Для макрокоманды ЗапускЗапросаSQL требуется аргумент, состоящий из инструкции SQL"
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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