Access - Importar un txt saltandose la cabecera

 
Vista:
Imágen de perfil de alex
Val: 40
Ha aumentado su posición en 4 puestos en Access (en relación al último mes)
Gráfica de Access

Importar un txt saltandose la cabecera

Publicado por alex (10 intervenciones) el 30/01/2021 14:42:11
Hola , he encontado el siguiente codigo que quisiera adaptar e mi programa, es un codigo de Emilio Sancha, creo. Lo que necesito es que la primera linea de mi fichero txt no me la importe. Se podria hacer con este codigo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
'*******************************************************************************
'* Form_frmImportar
'* Formulario para la importación de datos desde un archivo de texto delimitado
'* ESH 02/11/03 19:22
'*******************************************************************************
 
Option Compare Database
Option Explicit
 
 
'*******************************************************************************
'* cmdImportar_Click
'* Importa datos de un archivo de texto delimitado
'* uso:
'* ESH 02/11/03 19:20
'*******************************************************************************
 
Private Sub cmdImportar_Click()
 
On Error GoTo cmdImportar_Click_TratamientoErrores
 
Dim strArchivo As String, _
    bytArchivo As Byte, _
    strLinea As String, _
    strDelimitador As String, _
    i As Integer, _
    rst As Recordset, _
    strSQL As String, _
    Matriz() As String
 
DoCmd.Hourglass True
 
bytArchivo = FreeFile
 
' establezco el delimitador de texto con el de su código ASCII correspondiente
' esto forzado por la necesidad de poder usar el tabulador (CHR(9) que no
' tiene caracter imprimible
 
'strDelimitador = Chr(ccDelimitador.Column(1))
strDelimitador = Chr(59)  ' esto es el ;
 
' tomo el nombre del archivo de texto del formulario
strArchivo = txtRuta
 
' abro el archivo de texto
Open strArchivo For Input As bytArchivo
 
' abro el recordset
strSQL = "SELECT * FROM Tabla1"
 
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
 
' extraigo los datos del fichero de texto
Do
    ' leo una linea de texto del archivo
    Line Input #bytArchivo, strLinea
    ' si la linea está vacia, la ignoro
    If strLinea <> "" Then
        ' en este caso hay seis campos, luego cinco delimitadores
        ' inserto un registro en el recordset
        rst.AddNew
        ' troceo la cadena
        Matriz() = Split(strLinea, strDelimitador)
        ' llevo los distintos "trozos" a sus respectivos campos
        For i = 1 To 6
            ' si el segmento de cadena lleva comillas (Chr(34)), las ignoro
            If InStr(Matriz(i - 1), Chr(34)) <> 0 Then
                rst("Campo" & i) = Mid(Matriz(i - 1), 2, Len(Matriz(i - 1)) - 2)
            Else
                rst("Campo" & i) = Matriz(i - 1)
            End If
        Next i
        ' guardo el registro
        rst.Update
    End If
Loop While Not EOF(bytArchivo)
 
cmdImportar_Click_Salir:
    If Not IsEmpty(rst) Then
        rst.Close
        Set rst = Nothing
    End If
    Close #bytArchivo
    DoCmd.Hourglass False
    On Error GoTo 0
    Exit Sub
 
cmdImportar_Click_TratamientoErrores:
 
    MsgBox "Error " & Err.Number & " en proc. cmdImportar_Click de Documento VBA Form_frmImportar (" & Err.Description & ") "
    GoTo cmdImportar_Click_Salir
End Sub         ' cmdImportar_Click

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Importar un txt saltandose la cabecera

Publicado por Anonimo (3316 intervenciones) el 30/01/2021 22:41:41
Quizás si copias la línea 56 y la pegas en la 52 resuelvas el problema de 'saltar' la primera línea.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de alex
Val: 40
Ha aumentado su posición en 4 puestos en Access (en relación al último mes)
Gráfica de Access

Importar un txt saltandose la cabecera

Publicado por alex (10 intervenciones) el 31/01/2021 00:09:38
Perfecto, muchas gracias. Creo que de tanto parobar al final no sabia como arreglarlo. Repito funciona y gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar