2016-09-05 50 views
-1

我正在開發一個包含Userform和Table的員工每日時間跟蹤器,我希望員工填寫表單並點擊添加按鈕以將數據從表中發送。我已經寫下面的代碼,其被拋出一個錯誤:運行時錯誤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將其轉儲到立即窗口。您可以在故障排除中學習最重要的步驟之一。有時候這不是你想象的 - 並且在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爲空,則可能會出現此錯誤。 –