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