Hola, por favor si me pueden ayudar con el siguiente trabajo:
Manejo una hoja de excel con encabezados NIT-COD-MONTO-FACTURA-FECHA , las cuales en la parte de abajo o sea desde la fila A2 ingreso los datos correspondientes para cada encabezado, después tengo que copiar a un nuevo libro solo los datos y ya no los encabezados, ya el nuevo libro que tiene solo los datos tengo que guardarlos con tipo CSV (delimitado por comas) (.*csv) con el nombre del mes a los que corresponde, una vez guardados tengo que cambiar el formato .csv a .txt, hay alguna manera de que se pueda pasar directamente mediante una macro solo el rango de A2 : E50 donde están los datos y guardarlos como .txt? desde ya gracias por su tiempo.
Jesús Martínez
No sé si realmente necesitas una macro para hacer eso.
Si lo que quieres es copiar una vez (aunque ocurra cada vez que rellenes los datos) casi es más sencillo seleccionar y copiar que hacer otra cosa. Incluso una manera más sencilla:
1- Selecciona la opción "Guardar como" y en el desplegable de abajo busca CSV (delimitado por comas) (*.csv)
2- Guarda la hoja seleccionada con el nombre que quieras. Te dará avisos de que no se admiten más de una hoja y de compatibilidad de formatos. Dile que no hay ningún problema en todos los casos.
3- Elimina la primera fila donde están los encabezados y dale a guardado rápido.
4- El archivo CSV ya es un archivo de texto. Lo puedes abrir con el bloc de notas sin ningún problema. Si quieres asegurarte, simplemente cámbiale la extensión cuando lo copies para enviarlo o para almacenarlo y ponle .txt. Windows se quejará un poco, pero también le contestas que está todo ok.
Un saludo
Gracias por responder, pero lo que yo quiero es una macro que me agilize el procedimiento, lo que tú me indicas es lo que no quiero hacerlo manualmente, si no con una macro .
gracias
Jesús
Jesus Martinez Plantarosa
El problema que yo le veo es que los archivos csv son archivos puramente de texto, por lo que no puede funcionar una macro a partir de que se graba, por lo que habría que tratar con archivos en disco duro.
Dejo paso a quien sepa más que yo sobre gestión de archivos desde macros.
Saludos
Si sólo quieres una parte de la hoja de cálculo en tu archivo de texto, yo haría lo siguiente
Hasta aquí lo puedes hacer con el grabador de macros. Seguro que con unos pequeños ajustes para adaptarlo a diferentes tamaños del rango de datos será suficiente
Para renombrar el archivo que acabas de crear, lo más sencillo es utilizar la función NAME de VBA
Name rutacompletaarchivoexistente AS nombrenuevo
por ejemplo:
Name "C:\Users\tuusuario\Documents\Libro1.csv" As "Libro1.txt"
Puedes incluso cambiar la ruta en el nombre nuevo para cambiar el archivo de directorio
por ejemplo, para cambiar el nombre al archivo y moverlo a C:
Name "C:\Users\tuusuario\Documents\Libro1.csv" As "C:\Libro1.txt"
------
Ya sé Excel, pero necesito más.
Gracias Cron
Saludos
Jesus Martinez Plantarosa
Estimado Pacomegia, como siempre tus consejos son muy importantes y valiosos para mi, y justamente hago eso de copiar el rango que necesito a una nueva hoj ay guardar como csv y despues cambiarlo a txt, y justamente necesito una macro que me ahorre ese trabajo, si me podrias ayudar te agradecria un monton. Desde ya muchas gracias
saludos
Jesus Martinez Plantarosa