En este blog os voy a explicar un pequeño truco sobre cómo importar archivos de texto de forma automática utilizando el grabador de macros de excel, sin necesidad de conocer el lenguaje VBA Excel.
Si estás interesado en más información sobre los Macros de Excel puedes leer el artículo VBA Excel: para qué sirve, quién lo usa y cómo programar una macro.
Supongamos que trabajamos en un departamento de contabilidad. Todos los días recibimos un archivo de texto del sistema de la empresa, en el cual constan todas las facturas generadas el día anterior. Este archivo de texto
–ventas.txt– separa cada campo por medio de punto y coma. Las columnas en el archivo son Fecha, Número de factura, Código Cliente e Importe Factura.
Cuando nos sentamos delante del ordenador cada mañana, debemos importar manualmente este archivo a Excel y añadir una fila de totales a la tabla.
Esta tarea es perfecta para una macro. Antes de grabar la macro, deberemos pensar en los pasos que debemos realizar. En este caso, los pasos son los siguientes:
Importar archivo de texto .txt a Excel
1. Hacemos clic en el menú Archivo y seleccionamos Abrir.
2. Navegamos hasta la carpeta en la que está guardado el archivo ventas.txt.
3. Seleccionamos todos los archivos (*.*) en la lista desplegable Tipo de archivo.
4. Seleccionamos ventas.txt. Haga clic en Abrir
5. En el Asistente para importar texto –paso 1 de 3- seleccione Delimitados en el apartado Tipo de los datos originales.
6. Hacemos clic en siguiente.
7. En el Asistente para importar texto –paso 2 de 3- deseleccionamos la opción Tabulación y seleccionamos la opción punto y coma en el apartado Separadores.
8. Hacemos clic en Siguiente.
9. En el Asistente para importar texto –paso 3 de 3- deseleccionamos General en el apartado Formato de los datos en columna y lo cambiamos por Fecha DMA.
10. Hacemos clic en finalizar para importar el archivo.
11. Pulsamos Fin + Flecha abajo para movernos a la última fila de datos.
12. Pulsamos la flecha abajo una vez más para movernos a la fila de Totales.
13. Escribimos la palabra Total.
14. Pulsamos la tecla flecha derecha tres veces para movernos a la columna D de la fila Total.
15. Hacemos clic en el botón Autosuma y presionamos Ctrl + Intro para añadir un total a la columna E, mientras permanecemos en esta celda.
16. Aplicamos a la celda Formato monetario.
Si quieres aumentar tus conocimientos visita nuestro Curso de Excel
Grabar Macro en Excel
Después de haber ensayado estos pasos en nuestra cabeza estás listo para grabar la primera macro.
Abrimos un libro en blanco y lo guardamos con el nombre MacroImportVentas.xls.
Hacemos clic en el botón Grabar macro de la ficha de Desarrollador.
En el cuadro de diálogo Grabar macro el nombre por defecto es Macro1. Lo cambiamos por algún nombre más descriptivo como ImportarTXT. Nos aseguramos de que las macros se almacenan en Este Libro.
Es posible que deseemos ejecutar esta macro más delante de una forma sencilla; por lo tanto introduciremos i en el campo método abreviado. En el campo Descripción añadimos un pequeño texto descriptivo que diga lo que hace la macro. Finalmente, pulsamos Aceptar.
Con cuidado, ejecutamos todas las acciones necesarias para generar la importación de ventas automáticamente. TODOS los pasos que realicemos serán grabados.
Tras realizar el último paso, hacemos clic en el botón Stop de la esquina inferior izquierda de la ventana de Excel o en la pestaña Desarrollador, en botón Detener grabación.
Una vez grabada la macro, ya la podremos ejecutar. Para ello, la manera más fácil es apretar la pulsación Ctrl + i para que nos cargue automáticamente el archivo de texto en nuestra hoja de cálculo.
Fijaros que nos ahorramos todos los pasos tediosos de la importación; con una simple combinación de teclas nos realizará todos los pasos grabados por la macro.
También la podemos ejecutar desde Macros, y botón Ejecutar.
Este es el resultado de ejecutar la macro:
Para echar un vistazo al código, vamos al editor de Visual Basic en la ficha de Programador o pulsando Alt + F11, Veremos el código que nos ha generado internamente. Observa que sin entender el código hemos programado una macro:
Si estás interesado en ampliar tus conocimientos sobre todo lo relacionado a VBA Excel visita nuestro Curso Analista Programador VBA Excel.
Contenido adicional:
MASTERCLASS: TIPS EXCEL AUTOMATIZAR OFFICE OFIMÁTICA PROFESIONAL PROFESOR JORDI LLORT CIPSA