Create your SQL statement as a string first then use
debug.print SQLString
to see what the code is actually generating, I typically can not tell what I've done wrong when generating SQL statements without looking at the actual output.
Secondly, are you encountering any this error when specific fields are null as opposed to having a value? I haven't tested but I seem to recall Access will bomb out if you try to append a null date using ## instead of null in the SQL string. The other benefit of building your sql string independently (before you try to actually run it) is that you can code it to ignore fields where there are no values to append, so for instance let's say your record only had 3 fields, AQ_Code, Process_Category and StartDate your code would be something like
Code:
sSQL = "INSERT INTO tblProcesses ("
sSQL = sSQL & IIf(IsNull(txtCode), "", "AQ_Code,")
sSQL = sSQL & IIf(IsNull(txtCategory), "", "Process_Category,")
sSQL = sSQL & IIf(IsNull(txtStartDate), "", "StartDate,")
sSQL = Left(sSQL, Len(sSQL) - 1)
sSQL = sSQL & ") VALUES ("
sSQL = sSQL & IIf(IsNull(txtCode), "", "'" & txtCode & "',")
sSQL = sSQL & IIf(IsNull(txtCategory), "", "'" & txtCategory & "',")
sSQL = sSQL & IIf(IsNull(txtStartDate), "", "#" & txtStartDate & "#,")
sSQL = Left(sSQL, Len(sSQL) - 1)
sSQL = sSQL & ")"
db.execute (ssql)
You can also test your txtStartdate with the isDate function to make sure it's actually a date before you try to append it though if you have an input mask on that field it should prevent you from entering a non date even if you're actually storing the value as a text field.