antes de executar a SQL, susbstitui as aspas simples por aspas duplas dos valores a serem inseridos.
exemplo:
strSQL = "Insert Into Tabela ([Campo1], [Campo2]) VALUES('" & Substitui(Valor1, "'", """) & "', '" & Substitui(Valor2, "'", """) & ")"
'troca caracter por outro, dentro da string
Public Function Substitui(vgAlvo As String, vgOQue As String, vgPeloQue As String, Como As Integer) As String
Dim x As String, k As String, p As Integer, i As Integer 'dimensiona
x$ = vgAlvo$ 'salva string alvo
If Como = UM_A_UM Then 'se um a um,
For i = 1 To Len(x$) 'vamos trocar
k$ = Mid$(x$, i, 1) 'cada caracter de vgOQue$
p = InStr(vgOQue$, k$) 'pelo correspondente em vgPeloQue$
If p > 0 Then Mid$(x$, i, 1) = Mid$(vgPeloQue$, p, 1) 'na string alvo
Next
Else 'senão,
p = InStr(x$, vgOQue$) 'vamos trocar
While p > 0 'todos de uma vez
x$ = left$(x$, p - 1) + vgPeloQue$ + Mid$(x$, p + Len(vgOQue$)) 'quantas vezes necessário
p = InStr(p + Len(vgPeloQue$), x$, vgOQue$) 'na string alvo
Wend
End If
Substitui$ = x$ 'retorna a nova string
End Function