2016-09-05 1 views
-1

Разрабатывать ежедневный отслеживатель Employee Daily, который включает Userform и таблицу, я хочу, чтобы сотрудники заполнили форму и нажали кнопку добавления, чтобы отправить данные из таблицы в таблицу. Я написал следующий код, который бросает ошибку:Ошибка выполнения 3134 Вставить в форму заявления-пользователя

runtime error 3134 insert into statement 

Код, как показано ниже:

Private Sub ADD_Click() 
CurrentDb.Execute "INSERT INTO utilizationdata(DU-Date, [FirstName], US_Tax_Group)" & _ 
        "VALUES(" & Me.Text5 & ",'" & Me.Text7 & "'," & _ 
        Me.Combo25 & ",)" 

PrForm.Form.Requery 

End Sub 

Screenshot of userform

+0

Недостаточно информации, чтобы сказать наверняка, но для одного у вас есть запятая перед конечной скобкой, которой не должно быть, и ваше первое поле выглядит как дата, которую, возможно, придется преобразовать из строки в дату, и ограничено #. – PhillipXT

+2

Создайте инструкцию SQL в строковой переменной, а затем используйте Debug.Print, чтобы сбросить ее в окно Immediate. Один из наиболее важных шагов, которые вы можете изучить при поиске и устранении неисправностей. Иногда это не то, что вы думаете - и запуск его в окне SQL View часто идентифицирует конкретное проблемное место - как указывала дополнительная запятая @PhillipXT. – dbmitch

ответ

0

Вложите DU-Дата в скобках: [DU-дата]

Также, возможно, вам нужно приложить в поле «#», удалить кому и добавить пробелы:

CurrentDb.Execute "INSERT INTO utilizationdata ([DU-Date], [FirstName], [US_Tax_Group]) " & _ 
        "VALUES(#" & Me.Text5 & "#,'" & Me.Text7 & "'," & _ 
        Me.Combo25 & ")" 

И проще построить запрос в построителе запросов, а затем заменить данные по переменным.

+0

Здравствуйте, спасибо за вашу помощь, но когда я использовал упомянутый код, вы получаете новую ошибку времени выполнения 3075. Пожалуйста, помогите –

+0

Пожалуйста, дайте нам инструкцию SQL с данными, как предложено @dbmitch, в комментариях к вашему вопросу и сообщите нам, какие типы данных полей. Без этого это трудно понять. Например, эта ошибка может появиться, если Me.Text5 или Me.Combo25 пуст. –