Доступ к синтаксису VBA SQL, ошибки 3061 и 3075 - PullRequest
0 голосов
/ 27 февраля 2020

Я новичок в Access VBA, я использую оператор SQL, чтобы получить данные для создания файла Excel. Запрос использует значение поля со списком [FBrpt_FbReason_Cbo] в качестве критерия для данных. Это первый код, который я изменил в режиме Access Query SQL:

SQL = "SELECT FB_Register.FB_Date_Received AS [Date received], FB_Register.FB_Resp_date AS [Response date], FB_Register.FB_Title AS [Feedback title], FB_Register.FB_Reason AS Reason " & _
                "FROM FB_Register " & _
                "WHERE (((FB_Register.FB_Reason)=[Forms]![Feedback_Reports]![FBrpt_FbReason_Cbo])) " & _
                "ORDER BY FB_Register.FB_Date_Received DESC; "

Возвращает ошибку - Error number: 3061 = Too few parameters. Expected 1. Затем я изменил строку Where на:

"WHERE FB_Register.FB_Reason = " & [Forms]![Feedback_Reports]![FBrpt_FbReason_Cbo] & _
                " ORDER BY FB_Register.FB_Date_Received DESC"

Это возвращает ошибку - Error Number: 3075= Syntax error (missing operator) in query expression ‘FB_Register.FB_Reason = Positive feedback’.

В этом случае я выбрал "Positive feedback" в поле со списком. Этот код ‘FB_Register.FB_Reason = Positive feedback’ выглядит мне так, как и должно быть. Чего мне не хватает?

1 Ответ

0 голосов
/ 27 февраля 2020

Я понял, мне нужны были дополнительные кавычки - я считаю - чтобы превратить значение в строку, даже если это уже строка

"WHERE FB_Register.FB_Reason = '" & [Forms]![Feedback_Reports]![FBrpt_FbReason_Cbo] & _ "' ORDER BY FB_Register.FB_Date_Received DESC"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...