VBA: Problema con variables fecha en Access
He creado un código con VBA para importar extractos bancarios según la norma AEB34, de un archivo con formato txt. El archivo origen tiene el siguiente formato:
El código es el siguiente:
Private Sub Importar_Extracto_Click() Dim Num_Linea As String Dim Fecha_Operacion As Variant Dim Fecha_Valor As String Dim Fecha_Valor1 As Variant Dim Fecha_Valor2 As Date Dim Debe_Haber As String Dim Importe As String Dim Descripcion As String Dim Ruta_Extracto1 As String Dim Var_Id_Extracto As Long Ruta_Extracto1 = Me![Ruta_Extracto] Var_Id_Extracto = Me![Id_Extracto] Open Ruta_Extracto1 For Input As #1 While Not EOF(1) Line Input #1, strlinea Num_Linea = Mid(strlinea, 1, 2) If Num_Linea = "22" Then Fecha_Valor = Mid(strlinea, 17, 6) Fecha_Valor = Mid(strlinea, 21, 2) & "/" & Mid(strlinea, 19, 2) & "/" & Mid(strlinea, 17, 2) Fecha_Valor1 = CDate(Format(Fecha_Valor, "dd/mm/yyyy")) Debe_Haber = Mid(strlinea, 28, 1) Importe = CDbl(Mid(strlinea, 29, 14)) / 100 If Debe_Haber = 1 Then Debe_Haber = False Importe = Importe * (-1) Else Debe_Haber = True End If ElseIf Num_Linea = "23" Then Descripcion = Trim(Mid(strlinea, 5, 35)) CurrentDb.Execute ("INSERT INTO Extractos_Bancarios_Movimientos ( Id_Extracto, Fecha_Valor, Concepto, [Debe/Haber], Importe ) SELECT " & Var_Id_Extracto & " AS Expr1, #" & Fecha_Valor1 & "# AS Expr2, '" & Descripcion & "' AS Expr3, '" & Debe_Haber & "' AS Expr4, '" & Importe & "' AS Expr5;") Else End If Wend Close #1 Me![Subformulario_Movimientos_Extractos].Requery Respuesta = MsgBox("El extracto se ha exportado, ¿quieres eliminar el archico origen?", 36, "Atención") If Respuesta = vbYes Then Kill Ruta_Extracto1 Else End If End Sub
El problema es que las fechas a veces me las coge bien, pero a veces no. El resultado es el siguiente:
Los tres primeros registros son correctos, pero luego convierte mal las fechas
¿A qué puede deberse?
2 Respuestas
Respuesta de Sveinbjorn El Rojo
2
Respuesta
1