Visual Basic - Copiar data de un archivo excel a un txt

Life is soft - evento anual de software empresarial
 
Vista:

Copiar data de un archivo excel a un txt

Publicado por Luis (4 intervenciones) el 20/07/2007 19:21:15
Quiero copiar un rango de celdas vertical Ejemplo A1:A7 a un archivo txt, por favor ayudeme.

Luis
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:Copiar data de un archivo excel a un txt

Publicado por Natalia Camino (46 intervenciones) el 21/07/2007 10:18:43
Dim rs As ADODB.Recordset
Dim sArchivo As String
Set rs = New ADODB.Recordset
With rs
.ActiveConnection = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & _
App.Path & "\Libro1.xls;Extended Properties=Excel 8.0;"
.CursorType = adOpenStatic
.CursorLocation = adUseClient
.Open "Select * From [Hoja1$A1:A7]"
End With
sArchivo = App.Path & "\Prueba.txt"
rs.MoveFirst
Open sArchivo For Output As #1
Do Until rs.EOF = True
Print #1, rs.GetString(adClipString, , "", vbCrLf)
Loop
rs.Close
Close #1
-----------------------------------------------------------------
Observaciones:
En el menú Proyecto-> Referencias tienes que marcar la referencia a ADO.

Explico lo que hace este código:
- Crea un recordset y lo conecta al "Libro1.xls", seleccionando las celdas "A1:A7" de la "Hoja1"
- Abre el archivo "Prueba.txt" en modo de escritura. Si el archivo no existe, lo crea y si existe lo sobreescribe.
- Graba en este archivo los datos del recordset, separando cada registro con un salto de línea (si quieres que los grabe en la misma línea y separados por ej. con comas, sustituye vbCrLf por "," comillas dobles-coma-comillas dobles)
- Cierra el recordset y el archivo txt.
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

EXCELENTE!!

Publicado por Tomás (4 intervenciones) el 21/07/2007 23:01:49
Muy bueno el código, lo probé y funciona a la perfección.
Yo había conseguido algo como eso, pero con cien líneas más de código.

Felicitaciones Natalia
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

RE:Copiar data de un archivo excel a un txt

Publicado por Luis (4 intervenciones) el 23/07/2007 18:59:34
Hola Natalia, gracias por la respuesta!!!, sólo una consulta, la referencia a la que te refieres es:
Microsoft ADO Ext. 2.8 for DLL and security ?????
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

RE:Copiar data de un archivo excel a un txt

Publicado por Natalia Camino (46 intervenciones) el 24/07/2007 10:37:07
No, la referencia a ADO es

Microsoft ActiveX Data Objects 2.x Library

donde "x" puede ser 0, 1, 5, 6, 7, 8
Aunque con cualquiera de estas versiones funcionaría el código, te recomiendo que pongas la mas alta que tengas.
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