2012-06-26 2 views
0

У меня есть форма, которая позволяет добавлять имена в таблицу и отображать ее в выпадающем меню. Когда я нажимаю на форму, он должен попросить пользователя ввести имя, которое они хотели бы добавить, и нажать «ОК». После того, как пользователь нажимает кнопку ОК, имя должно быть сохранено в таблице и добавлено в раскрывающемся меню.Почему этот оператор SQL запрашивает значение?

Все прекрасно работает, но когда пользователь вводит значение в текстовое поле и нажимает «ОК», появляется окно с запросом значения параметра. Независимо от того, какие типы пользователей в этом значении параметра сохраняются в таблице, вместо получения значения из текстового поля. Я не знаю, почему это происходит.

Имя - это строка, это знаки четности?

Вот код:

Dim test As String 
test = Text1.Value 
DoCmd.RunSQL "INSERT INTO List_Of_Agencies(T_PI_GroupName)VALUES (" & test & ");" 
Form_0_Cover.Combo2.Requery 
+1

Добро пожаловать на переполнение стека. Пожалуйста, прочитайте [FAQ] - вы не подходите к кому-то и не спрашиваете «Добавить запрос ACcess?». поэтому, пожалуйста, не делайте этого здесь. Название вопроса должно быть актуальным вопросом. Кроме того, пожалуйста, воспользуйтесь замечательной системой маркировки и соответствующим образом пометьте ваши вопросы, чтобы другие знали, о чем идет речь. – JimmyPena

+0

Я использовал «Tagging System» – Ish

+1

Тег 'ms-access' является наиболее широко контролируемым, и все вопросы о MS Access должны в идеале включать этот тег. Это значительно облегчает пользователям SO поиск тем, связанных с доступом, вместо того, чтобы искать каждый субтег. – Fionnuala

ответ

0
DoCmd.RunSQL "INSERT INTO List_Of_Agencies(T_PI_GroupName) VALUES ('" & test & "')" 
+0

RunSQL работает с предупреждениями MS Access. Для запуска без встроенных предупреждений используйте экземпляр CurrentDB и Exceute SQL string. – Fionnuala

+1

@Remou Не можете ли вы просто использовать что-то вроде DoCmd.SetWarnings = 0' заранее? – JimmyPena

+1

@JP Нет, это плохая идея. Он маскирует ошибки, о которых вам нужно знать, и является системным, а не ограниченным приложением Access, которое вы используете, что означает, что вы можете вызвать хаос, если вы забыли отключить «Отключить предупреждения» или даже если кто-то переключается с одного приложения на другое между командами , Вы обнаружите, что большинство мест в SO, где были указаны предупреждения, есть комментарий, предполагающий, что вы не должны его использовать. Это также верно в Tek-Tips, и я подозреваю большинство форумов доступа. – Fionnuala

Смежные вопросы