CLASE DE RPA
PROBLEMA: que tarea repetitiva quiere automatizar
EJERCICIO: Consolidar bases mensuales de diferentes cierres contable y
diferentes clientes de la empresa.
OBJETIVO: Consolidar y normalizar las bases para tener diferentes
entregables a los clientes.
DEFINICION DEL PROCESO - FLUJOGRAMA:
1. PASO1: Bajar las bases de datos almacenarlas en ruta y mes correcto.
a. Definir las subrutinas
2. PASO2: abrir la base, identificar a que cliente corresponde.
3. PASO3: Identificar a que mes de cierre contable corresponde.
4. PASO4: identificar a que subproceso del cierre contable corresponde.
a. Definir las subrutinas
5. PASO5: Consolidar la base, con NIT, MES y Año al que corresponde,
según el cierre contable.
a. Definir las subrutinas
DESARROLLO DEL EJERCICIO
1. Programar el Excel
2. Instalar la herramienta definida por el proceso y flujograma
3. Construir el robot con IA
a. PROMPT1: Quiero un código VBA que me permita encontrar la última fila con
datos en la columna A (NIT) en una hoja llamada 'PARAMETROS'. También me
gustaría que mostrara esa fila en un mensaje."
Respuesta de CHAT GPT:
b. PROMPT2: Necesito un código en VBA que recorra una tabla en la hoja de
trabajo llamada 'PARAMETROS' (con una tabla llamada 'Parametros'),
obteniendo el valor de la columna A (NIT) y la columna B (nombre de la
empresa) de cada fila, comenzando desde la fila 2 hasta la última fila con datos.
Luego, debe generar dinámicamente una ruta de carpeta en base a estos valores
en la siguiente estructura: 'C:\TABLEROS DE CONTROL\NIT_NombreEmpresa\
1. BASEC'. Finalmente, quiero que el código esté optimizado sin selecciones
innecesarias de hojas ni asignaciones repetidas. ¿Podrías proporcionarme un
código VBA para esta tarea?"
VER EN CHAT GPT POR LO LARGO EL CODIGO VBA
c. PROMPT3: Necesito un código VBA en Excel que haga lo siguiente:
Inicie un contador c en 1 y ejecute un ciclo For desde la fila 8 hasta la fila 19 en
una hoja de cálculo llamada 'MANDO'.
Dentro del ciclo, intente activar un archivo llamado
'RPA_INTELIGENCIA_FINANCIERA.xlsm'. Si no está abierto, que continúe sin
detenerse por error.
Una vez activado el archivo, seleccione la hoja 'MANDO'.
Obtenga el valor de la columna XFB de cada fila iterada, convierta ese valor en
una cadena de texto y guárdelo en la variable mesc.
Con ese valor, cree el nombre de un archivo Excel en el siguiente formato:
'Balance de prueba por tercero_' & mesc & '_' & ANO_BASE & '.xlsx'.
Verifique si el archivo con ese nombre existe en una ruta específica, y si existe,
ábralo.
Seleccione las celdas en el rango A8 hasta el último valor hacia la derecha y
hacia abajo, y luego copie ese rango.
Active de nuevo el archivo 'RPA_INTELIGENCIA_FINANCIERA.xlsm',
seleccione la hoja 'BASE' y encuentre la última fila con datos en la columna A.
Pegue los datos copiados desde el archivo externo en la siguiente fila vacía, a
partir de la columna B, asegurándose de pegar solo valores y formatos de
número.
Aplique un filtro en la tabla de la hoja 'BASE' en la columna B, buscando valores
que sean iguales a 'Nivel' o vacíos, elimine todas las filas visibles tras aplicar el
filtro, y finalmente desactive el modo de corte/copia."
VER EN CHAT GPT POR LO LARGO EL CODIGO VBA
d. PROMPT4: Por favor, escribe un código VBA que realice las siguientes acciones
en una hoja de Excel:
Establezca la hoja de trabajo llamada "BASE" como el área de trabajo.
Identifique la última fila con datos en la columna A de la hoja.
Cree un bucle que recorra las filas desde la 2 hasta la última fila identificada en
la columna A.
Para cada fila, compruebe si la celda en la columna A está vacía.
Si la celda en la columna A está vacía, asigne un valor de la variable NIT a esa
celda.
Además, asigne a la columna 13 (columna M) un valor compuesto por "0",
seguido de la variable c, un punto (.) y la variable mesc.
En la columna 14 (columna N), asigne el valor de la variable ANO_BASE.
Trabaje dentro de una tabla de Excel llamada "TABLA_BASE" en esa hoja.
No modifique las celdas de la columna A que ya contengan un valor.
El código debe detenerse cuando llegue a la última fila con datos en la columna
A."
VER EN CHAT GPT POR LO LARGO EL CODIGO VBA
e. PROMPT5: Desarrolla un código en VBA que realice las siguientes acciones:
Active el libro actual donde se está ejecutando la macro.
Implemente una estructura de manejo de errores que ignore los errores si el
archivo que se va a abrir no está presente o no puede ser activado.
Intente activar un archivo cuyo nombre se encuentra en una variable llamada
nombreArchivo.
Asigne el libro de trabajo activado a una variable llamada libroDestino.
Cierre el libro de trabajo asignado a libroDestino sin guardar los cambios.
Implemente un contador que incremente una variable c en 1, que actúa como un
medidor.
Si no se encuentra el archivo, muestre un cuadro de mensaje informando al
usuario que el archivo no fue encontrado, incluyendo la ruta almacenada en una
variable rutaArchivo.
Asegúrate de estructurar correctamente el código con bloques If...Then...Else
para que funcione de manera robusta