Here's a basic outline of what I believe you are trying to achieve.
- It looks to me like your form fields are referenced from a subform on a form.
Your sql looks very complicated when you put in a full reference to the objects, so i'd prefer to
- create some variables
- assign the form object to the variable and
- reference the variable in the sql.
I think it makes the procedure more readable. You could call the below from a button on your form:
'****Update a table based on the values on a subform****'
'Table name: dbo.Soferi_test
'Form Name: frmMain
'Subform Name: subform_soferi
Sub updateTable()
'Declare your variables which will be used in the sql string
Dim strSQL As String
Dim strNumele As String
Dim strPrenumele As String
Dim strCertificatCipti As String
Dim strIDNO As String
'Assign your variables to the form\subform objects
'You should also add some validation to check that the fields are not null
strNumele = Form_frmMain.subform_soferi!numele
strPrenumele = Form_frmMain.subform_soferi!prenumele
strCertificatCipti = Form_frmMain.subform_soferi!certificat_cipti
strIDNO = Form_frmMain.subform_soferi!IDNO
'Build your sql string
strSQL = "UPDATE dbo.Soferi_test SET Soferi_test.Name = '" & strNumele & strPrenumele & "', Cipti = '" & strCertificatCipti & "' WHERE (((Soferi_test.IDNO)='" & strIDNO & "'));"
'Execute the sql
CurrentDb.Execute strSQL
'You will want to put in some error handling here
End Sub
& ";"
at the end too. – Alistair Weirdebug.print
the sql and paste the output in your question – Alistair Weir