pierchi usa le query parametriche è l'unica cosa che non hai provato no? e Myitaly , che ha suggerito la cosa, è uno che la sa lunga 
codice:
- Dim strSQL As String
- strSQL = "INSERT INTO test (a,b,c,d) VALUES(?,?,?,?)"
- Dim adoCommand As ADODB.Command
- Set adoCommand = New ADODB.Command
- With adoCommand
- 'Replace adoConnection with the name of your connection object
- .ActiveConnection = adoConnection
- .CommandType = adCmdText
- .CommandText = strSQL
- .Prepared = True
- .Parameters.Append .CreateParameter(, adVarChar, adParamInput, 50, Data1)
- .Parameters.Append .CreateParameter(, adBoolean, adParamInput, , Data2)
- .Parameters.Append .CreateParameter(, adInteger, adParamInput, , Data3)
- .Parameters.Append .CreateParameter(, adDate, adParamInput, , Data4)
- .Execute , , adCmdText + adExecuteNoRecords
- 'note: the last two arguments used for Execute here makes the execution of the command faster
- End With
copiato e incollato da un altro sito