Visual Basic - TXT A DBF

Life is soft - evento anual de software empresarial
 
Vista:

TXT A DBF

Publicado por JULIOESCOBAR (98 intervenciones) el 31/01/2005 03:25:17
AMIGOS: COMO PUEDO PASAR LOS DATOS DE UN ARCHIVO .TXT A UN MDB, SI MI ARCHIVO TXT ES CORRIDO, SIN COMILLAS Y COMAS (" " , ), POR AQUI ME ENCONTRE UN CODIGO FUENTE QUE LO HACE PERO EL ARCHIVO TXT ES COM ESOS SIGNOS, NO ESTA CORRIDO, SALUDOS....JULIO
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

RE:TXT A DBF

Publicado por Anonimo (37 intervenciones) el 31/01/2005 09:02:07
MDB o DBF????????????????????????
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

RE:TXT A DBF

Publicado por ismael (28 intervenciones) el 31/01/2005 12:02:51
Tampoco sabes la longitud de cada campo? Sabiendo esto ya puedes ir cortando cada campo de cada registro
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

RE:TXT A DBF

Publicado por JULIOESCOBAR (98 intervenciones) el 01/02/2005 05:18:16
DISCULPEN PASARSE DE UN TXT A UN MDB (ACCES), LA LONGITUD DE CADA CAMPO SI LA TENGO, EJEMPLO:

123456789123456

DE LA 1 A LA 3 ES UN CAMPO
DE LA 4 A LA 9 ES OTRO
Y DONDE EMPIEZA EL 1 AL 6 ES EL TERCER CAMPO

GRACIAS DE ANTEMANO
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

RE:TXT A DBF

Publicado por ismael (28 intervenciones) el 01/02/2005 14:58:11
Pues entonces ya lo tienes:

dim strCadena as string
dim strCampo1 as string, strCampo2 as string, strCampo3 as string

strCadena =123456789123456
strCampo1 = Left(strCadena,3)
strCampo2 = Mid(strCadena,4,6)
strCampo3 = Right(Strcadena,6)

Con estas variables ya puedes hacer el insert en la tabla access a sus campos correspondientes.
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

RE:TXT A DBF

Publicado por grrrrrrrrrrrrr (1 intervención) el 01/02/2005 16:47:48
No hay que romperse la cabeza para resolver algo tan simple, aún como novato, creo que puedes usar algo de la ayuda de VB, o bien, comprar un libro de "Aprenda Visual Basic en 21 Días"
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

RE:TXT A DBF

Publicado por JULIOESCOBAR (98 intervenciones) el 02/02/2005 04:31:26
AMIGO: SI ES TAN FACIL POR QUE NO ME AYUDAS DICIENDOME COMO, YA QUE SOY LO DEMASIADO NOVATO PARA NO SABERLO , Y YA LE BUSQUE EN LAS AYUDAS PERO NO ENCUENTRO NADA, SI PUEDES ENVIARME UN EJEMPLO A MI DIRECCION TE LO AGRADECERE, GRACIAS DE ANTEMANO
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

RE:TXT A DBF

Publicado por Cecilia Colalongo (3116 intervenciones) el 02/02/2005 10:37:17
Puedes leer el archivo, pasarlo a un String y luego manipularlo por filas y luego cortar cada una de acuerdo a las longitudes de tus campos.
No indicas si estás utilizando ADO o DAO.

Archivo = FileToString("MiArchivo.txt")
Lineas = Split(Archivo,vbCrLf)

Luego Lineas es un vector que contiene cada fila del archivo:

Dim i Las Long

For i=LBound(Lineas) To UBound(Lineas)
TuObjetoConnection.Execute "INSERT INTO MiTabla (Campo1,Campo2,Campo3) VALUES (" Left(Lineas(i),3) & "," & Mid(Lineas(i),4,6) & "," & Right(Lineas(i),6) & ")"
Next i

La función para pasar un archivo a un String es:

Public Function FileToString(FileName As String) As String
On Error GoTo ErrorHandler

Dim hlngFile As Long, strFile As String

hlngFile = FreeFile

Open FileName For Binary Access Read As hlngFile

FileToString = vbNullString

strFile = String(FileLen(FileName), " ")

Get hlngFile, , strFile

Close hlngFile

FileToString = strFile

Exit Function

ErrorHandler:
FileToString = Empty
End Function
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