Error insertar datos desde VBA usando formulario

Un gusto en saludar maestros:

Me gustaría me ayudaran en un temita ya que por más que he intentado aún no puedo corregirlo, la cosa es que debo ingresar datos desde una consulta hecha en VBA rescatando datos de un formulario, les dejo el código:

Private Sub Ingresar_Click()
On Error GoTo Err_Ingresar_Click
Dim fecha As Variant
Dim num, num1 As Integer
Dim strSQL As String
Dim c As Control
If IsNull(Form!N_SERIE) = True Then
num = 0
retvalue = MsgBox("Debe ingresar n° de serie", vbOKCancel)
Else
num = 1
End If
If IsNull(Form!FECHA_INGRESO) = True Then
num1 = 0
retvalue = MsgBox("Debe ingresar una fecha válida", vbOKCancel)
Else
num1 = 1
End If
If num = 1 And num1 = 1 Then
'fecha = IIf(Form!FECHA_INGRESO.Value, 0, Form!FECHA_INGRESO)
'fecha = Nz(fecha, 0)
'MsgBox "Fecha es" & CDate(fecha)
strSQL = "INSERT INTO COMPONENTE (N_SERIE, DESCRIPCIÓN, MARCA, MODELO, FRAME, CANTIDAD, POTENCIA, COD_REPARABLE, VALOR_NUEVO, COD_STOCK, F_ING_COMP) Values ('" & Form!N_SERIE.Value & "', '" & Form!DESCRIPCION_COM.Value & "', '" & Form!MARCA.Value & "', '" & Form!MODELO.Value & "', '" & Form!FRAME.Value & "', " & IIf(IsNull(Form!CANTIDAD.Value), "NULL", Form!CANTIDAD) & ", '" & Form!POTENCIA.Value & "', " & IIf(IsNull(Form!CR.Value), "NULL", Form!CR) & ", " & IIf(IsNull(Form!VALOR_NUEVO.Value), "NULL", Form!VALOR_NUEVO) & ", " & IIf(IsNull(Form!CODIGO_STOCK.Value), "NULL", Form!CODIGO_STOCK) & ", CDate('" & Form!FECHA_INGRESO.Value & "'))"
DoCmd.RunSQL (strSQL)
MsgBox "Registros ingresados"
End If

Exit_Ingresar_Click:
Exit Sub
Err_Ingresar_Click:
MsgBox Err.Description
Resume Exit_Ingresar_Click

Bueno la cosa es que al ingresar la primera consulta todo resulta bien, el problema se da cuando deseo ingresar una segunda consulta.He insertado un botón con el cual limpio los campos para que todos los textbox me queden en blanco, utilizando la siguiente función:

Sub ClearFormText(frm As Form)
Dim ctl As Control
For Each ctl In frm.Controls
If ctl.ControlType = acTextBox Then
ctl.Value = ""
End If
Next ctl
End Sub

Llamo la función desde un botón llamado limpiar, y el proceso lo realiza, el problema se da cuando vuelvo a ingresar los datos en los textbox, presiono el botón guardar y me arroja error en la instrucción Insert, aquí he quedado no sé que más hacer.

Les pido ayuda ya que llevo mucho tiempo con este problema, además les agradezco de antemano.

Añade tu respuesta

Haz clic para o