У вас есть несколько различных типов ошибок ... переменные не могут быть в кавычках, и поскольку поле CXI_ID
является String
, оно делает нужны кавычки.
Предполагается, что поле Consent
равно цифре c, а поле со списком также возвращает значение нумерации c.
testSQL = "UPDATE [tbl_Participants]" & _
" SET tbl_Participants.Consent = " & Forms.frmReturn.cboConsent.value & _
" WHERE tbl_Participants.CXI_ID = '" & CXIid & "'"
Также обратите внимание на пробелы I добавлено до SET и WHERE. Это важно.
Используйте MsgBox testSQL
или Debug.Print testSQL
, чтобы дважды проверить, на что установлено значение testSQL
, прежде чем запускать его.
Если поле CXI_ID
не является строка, но вы просто используете строку в качестве типа переменной, по какой-то причине содержащей значение:
testSQL = "UPDATE [tbl_Participants]" & _
" SET tbl_Participants.Consent = " & Forms.frmReturn.cboConsent.value & _
" WHERE tbl_Participants.CXI_ID = " & CXIid
Если они обе строки:
testSQL = "UPDATE [tbl_Participants]" & _
" SET tbl_Participants.Consent = '" & Forms.frmReturn.cboConsent.value & "'" & _
" WHERE tbl_Participants.CXI_ID = '" & CXIid & "'"