Importar datos con visual basic

Hola,
Tengo un archivo de texto con campos separados con pipes (|) y deseo importarlos en una tabla de access, ¿cómo puedo hacerlo de la manera más sencilla y eficiente?
Gracias por tu gentil cooperación.
Atentamente.
EZ

1 Respuesta

Respuesta
1
Tienes que realizar un programa que lea línea por línea tu archivo y vaya localizando los pipes, de ahí armas variables de memoria para cada campo y después generas un insert de sql con ADO y listo.
¿Me puedes aclarar un poco de como debo abrir el archivo de tipo texto para leerlo linea por linea y así poder hacer la selección de campos por cada pipe?
Checa el siguiente código y adáptalo, abre y crea un archivo al mismo tiempo.
Dim sRegistro As String 'Contenido del Registro
Dim iNumFile As Integer 'Numero de Archivo del DOS
Dim iPos As Long
Dim smodMsg As String
'modificacion 10/11/97
Dim giRetorna As Integer
Screen.MousePointer = vbHourglass
'sprDatos.ReDraw = False
'Inicia Apertura del Archivo
On Local Error GoTo ErrorOpenFile1
'sprDatos.MaxRows = NULL_INTEGER
'Obtiene un número de archivo libre
iNumFile = FreeFile
' iNumFile2 = FreeFile
'Abre el Archivo y Lee el Primer registro
Open Trim$(Me.txtFile.Text) For Input As iNumFile
' asignamos el nombre de salida igual al leido menos la extensión
sRegistro = Left$(Trim$(Me.txtFile.Text), Len(Trim$(Me.txtFile.Text)) - 6) & "HTML"
Open sRegistro For Output As #2
iPos = 1
'Inicia lectura del Archivo
While Not EOF(iNumFile)
'Leo la Linea del Registro
Line Input #iNumFile, sRegistro
' If InStr(1, sRegistro, "12345X") = 0 Then
Select Case iPos
Case 2
' se trata de la segunda línea
Case 3
' se trata de la línea de titulos
'Print #2, "<B><A style={color=blue;} HREF=http://www.planet-source-code.com/vb/scripts/BrowseCategoryOrSearchResults.asp?txtCriteria=omar+vivas&blnWorldDropDownUsed=TRUE&txtMaxNumberOfEntriesPerPage=10&blnResetAllVariables=TRUE&lngWId=1&B1=Quick+Search&optSort=Alphabetical TARGET=_new><font size=2 face=Arial, Helvetica, sans-serif>Omar Vivas, MCP, MCSD, MCDBA, MCSE</font></A></B>"
Print #2, "<h1><b>" & sRegistro & "</b></h1>"
Case 4, 5, 6, 7, 8, 9, 10
' se trata de las líneas de subtitulos
'Print #2, "<B><A style={color=blue;} HREF=http://www.planet-source-code.com/vb/scripts/BrowseCategoryOrSearchResults.asp?txtCriteria=omar+vivas&blnWorldDropDownUsed=TRUE&txtMaxNumberOfEntriesPerPage=10&blnResetAllVariables=TRUE&lngWId=1&B1=Quick+Search&optSort=Alphabetical TARGET=_new><font size=2 face=Arial, Helvetica, sans-serif>Omar Vivas, MCP, MCSD, MCDBA, MCSE</font></A></B>"
Print #2, "<h2><b>" & sRegistro & "</b></h2>"
Case Is >= 11
Print #2, sRegistro
End Select
iPos = iPos + 1
' Print #2, "<h5> ASP Verified</h5>"
'' Print #2, "<h5> Root " & txtRuta(0).Text & " </h5>"
' Print #2, "<h5> " & Date & " </h5>"
' Print #2, "<h5> " & Time & " </h5>"
' End If
' Open sPath & "ASPLogs.txt" For Output As #1
' Open sPath & "PaginasMalas.html" For Output As #2
' Open sPath & "Errores.html" For Output As #3
'
' 'Print #2, "<image src='ease.bmp'> </image>"
' Print #2, "<B><A style={color=blue;} HREF=http://www.planet-source-code.com/vb/scripts/BrowseCategoryOrSearchResults.asp?txtCriteria=omar+vivas&blnWorldDropDownUsed=TRUE&txtMaxNumberOfEntriesPerPage=10&blnResetAllVariables=TRUE&lngWId=1&B1=Quick+Search&optSort=Alphabetical TARGET=_new><font size=2 face=Arial, Helvetica, sans-serif>Omar Vivas, MCP, MCSD, MCDBA, MCSE</font></A></B>"
' Print #2, "<h5> ASP Verified</h5>"
' Print #2, "<h5> Root " & txtRuta(0).Text & " </h5>"
' Print #2, "<h5> " & Date & " </h5>"
' Print #2, "<h5> " & Time & " </h5>"
Wend
'Cierra el Archivo
Close #iNumFile
Close #2
Screen.MousePointer = vbDefault
Exit Sub
ErrorOpenFile1:
smodMsg = " Ocurrió un Error al Abrir el Archivo a Integrar"
'Despliega el mensaje que se armo anteriormente
iPos = MsgBox(smodMsg, vbCritical)
Close #iNumFile
Close #2
Exit Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas