2016-08-08 10 views
1

Ich habe eine Datenbank mit einem Formular, das ganz gut funktioniert, aber jetzt, nachdem ich die Datenbank geteilt Ich erhalte eine Fehlermeldung:VBA ungültig. (Punkt) oder! oder Klammern nach dem Spalten Datenbank

Es ist eine ungültige Verwendung der. (Punkt) oder! Operator oder ungültige Klammern.

Dies ist der Code durch den Debugger gezielte

DoCmd.RunSQL ("Insert Into TestingStatistics (BadgeNumber, TestName, College, Instructor, SigninTime, Special) " & _ 
"Values ('" & Me.txtBadgeNo.Value & "', '" & strTestName & "', '" & strCollege & "', '" & strInstructor & "', Now(), '" & Me.chkSpecial.Value & "');") 

Als ich die Me.txtBadgeNo.Value und Me.chkSpecial.Value entfernen

"Values (" & strTestName & "', '" & strCollege & "', '" & strInstructor & "', Now());") 

ich den Fehler:

Syntaxfehler (fehlender Operator) im Abfrageausdruck 'Medizin', 'Medizin', Larsen ', Now());'.

Auch hier arbeitete, bevor ich die Datenbank aufgeteilt, ich brauche diese Insert-Anweisung zu arbeiten, was los ist?

+2

Ersetzen Sie 'DoCmd.RunSQL' durch' Debug.Print' und aktualisieren Sie Ihre Frage mit der genauen SQL, die fehlschlägt. – Comintern

+0

'Debug.Print' zeigt nichts neben dem ersten Fehler – Skathix

+0

die Anführungszeichen Hinzufügen nicht den Fehler ändern, wenn es ein wichtiger Punkt ist. – Skathix

Antwort

0

Sie können nicht nur Werte löschen; Die Anzahl muss mit der Anzahl der Felder übereinstimmen.

Versuchen Sie folgendes:

DoCmd.RunSQL ("Insert Into TestingStatistics (BadgeNumber, TestName, College, Instructor, SigninTime, Special) " & _ 
"Values (" & Me!txtBadgeNo.Value & ", '" & strTestName & "', '" & strCollege & "', '" & strInstructor & "', Now(), " & Me!chkSpecial.Value & ");") 

bearbeiten, zu debuggen:

Dim SQL As String 

SQL = _ 
    "Insert Into TestingStatistics (BadgeNumber, TestName, College, Instructor, SigninTime, Special) " & _ 
    "Values (" & Me!txtBadgeNo.Value & ", '" & strTestName & "', '" & strCollege & "', '" & strInstructor & "', Now(), " & Me!chkSpecial.Value & ");" 

Debug.Print SQL 

DoCmd.RunSQL SQL 
+0

Richtig, offensichtlich Entschuldigung. Ja, das ich! hilft nicht immer noch den ersten Fehler zu bekommen. – Skathix

+0

OK. Dann versuchen Sie, das zusammengesetzte SQL auszugeben und uns mitzuteilen, was Sie sehen. Siehe Bearbeiten. – Gustav

0

"Werte (" & strTestName & " ''" & strCollege & " ''" & strInstructor & " ''“& Now() & "');")

Verwandte Themen