jueves, 10 de junio de 2021

Power Automate y Excel. Un paso adelante.

Empezaremos por el principio. ¿Qué es Power Automate?.
Bien, Power Automate, junto a Power BI (esta seguro que te suena), Power Apps y Power Virtual Agents conforman el conjunto de aplicaciones de Microsoft conocido como Power Platform.
Resumiendo en dos palabras el sentido de cada aplicación, podríamos decir que:
-Power BI: convierte los orígenes de datos no relacionados en conocimientos coherentes, visualmente inmersivos e interactivos para los usuarios finales.
-Power Apps: nos permite crear rápidamente aplicaciones con poco código que modernizan los procesos dentro de cualquier entorno.
-Power Virtual Agents: genera bots eficaces utilizando una interfaz gráfica guiada, sin código, facilemente y sin necesidad de grandes conocimientos.
-Power Automate: servicio que nos permite crear flujos de trabajo automatizados entre nuestras aplicaciones; entre otras cosas nos facilita la tarea de sincronizar archivos, obtener notificaciones, recopilar datos, enviar emails, etc.


Respecto a Power Automate debemos conocer quién puede usarlo, quién tiene licencia de uso??...
Este es un tema complejo donde directamente te dejaré el link de Microsoft para que veas sus precios y sus limitaciones.

Recuerda que son aplicaciones al margen del paquete de Office.

Lo mejor que puedes hacer para asegurarte que dispones de licencias de uso para alguna de estas aplicaciones es entrar en tu cuenta de Microsoft o de Office, y ver en el listado de Suscripciones si dispones de alguna de ellas, y en concreto de Power Automate.

Un apunte más, Power Automate antes era conocido como Microsoft Flows... por si alguna vez lees al respecto.

Si quieres probar qué te puede ofrecer existe una versión de prueba gratis durante algunos días...

Otro punto que debes saber es que existe una versión Power Automate Desktop disponible para Windows 10 (aquí) de fácil descarga e instalación. Lo cual te recomiendo!!.

En mi caso es la versión que voy a emplear.

Después de esta breve introducción, os propongo un ejemplo de uso de esta herramienta.
Necesitamos obtener un listado de ciertos ficheros de Excel contenidos en un árbol de carpetas y subcarpetas, concretamente todos los que estén en una subcarpeta con un nombre común: 'EXCELFORO' (en mi ejemplo).

En mi ejemplo vemos que dentro de una carpeta \TEST_CARPETAS existe a su vez otras cuatro subcarpetas E-0001, E-0002, E-0003 y E-0004, y nuevamente dentro de cada una nuevas subcarpetas: 1-AAA, 2-BBB, 3-CCC, 4-DDD y EXCELFORO; dentro de cada una de ellas existen varios ficheros de Excel, con extensiones .xlsx

Queremos obtener una lista de los ficheros *.xlsx contenidos únicamente en la subcarpeta \EXCELFORO.
Esta lista la llevaremos a una instancia nueva de un libro de Excel.

El proceso o flujo de trabajo que construiremos con Power Automate será:
1- Identificar todos los ficheros contenidos en la carpeta principal. Mediante la acción: Obtener archivos de la carpeta
2- Crear una lista nueva donde en pasos siguientes añadir los ficheros que cumplan nuestra condición. Mediante la acción: Crear nueva lista
3- Añadir un bucle For each que recorra todas los ficheros, aplicando un condicional IF que compruebe si la ruta contiene el texto FORO (discriminando mayúsculas de minúsculas)
Cuando se cumpla la condición Añadiremos dicho fichero a nuestra lista creada en el paso 2.
4- Iniciamos un documento en blanco en Excel
5- Llevamos al fichero desde la fila 1, columna 1 el resultado de la lista de ficheros...


Empecemos por lo obvio, abriendo la aplicación instalada: Power Automate Desktop, y a continuación abriremos un Nuevo flujo:
Power Automate y Excel. Un paso adelante.

Nos pedirá que le asignemos un nombre a nuestro flujo, tras lo cual presionaremos crear...
Power Automate y Excel. Un paso adelante.

Se abrirá la pantalla de configuración de acciones, con un panel a la izquierda, categorizado, con las acciones habilitadas... y un cuadro predictivo de búsqueda (que te recomiendo que emplees).
Así desplegando la categoría de Carpetas veremos la acción: Obtener archivos de la carpeta, que arrastraremos a la ventana de fujos (en medio...)
Power Automate y Excel. Un paso adelante.

Inmediatamente se abrirá la configuración de esta acción, donde indicaremos la carpeta donde buscar, en nuestro ejemplo: F:\excelforo\TEST_CARPETAS; qué tipo de archivos buscamos: *.xlsx (cualquiera de Excel); si queremos buscar en las subcarpetas (obviamente sí); y que nombre se le asigna al listado obtenido: Files
Power Automate y Excel. Un paso adelante.


En el paso dos crearemos una nueva lista desde la categoría Variables, igual que antes la arrastraremos a continuación del paso previo...
Nos pedirá dar nombre a esta variable 'lista'
Power Automate y Excel. Un paso adelante.


El paso tres consiste en crear un bucle for each (desde la categoría bucles) iterando o recorriendo la lista completa de ficheros obtenidos en el paso 1; para luego incorporar un condicional IF (desde la categoría condicionales), indicando que si se cumple el criterio del IF ( que contenga el texto 'FORO' en mayúsculas) agregue dicho elemento a nuestra Lista nueva.
Power Automate y Excel. Un paso adelante.


Al incorporar la acción 'Agregar un elemento a una lista existente' (desde la categoría Variables) diremos qué incorporar y dónde.
Power Automate y Excel. Un paso adelante.


En el siguiente paso dentro de la categoría Excel indicaremos que queremos Iniciar Excel con un documento en blanco
Power Automate y Excel. Un paso adelante.


Finalizamos añadiendo la última acción, también en la categoría Excel, que nos permite Escribir en la hoja de cálculo de Excel. Indicando qué queremos trasladar: la ListaFinal de archivos, y dónde: a partir de la celda fila 1 , columna 1
Power Automate y Excel. Un paso adelante.


Este es el resultado final de nuestro flujo:
Power Automate y Excel. Un paso adelante.


Hemos acabado... presiona F5 o el botón de Ejecutar, y comprobarás como se ejecuta nuestro proceso paso a paso... indicándote el tiempo de ejecución, y viendo cómo se abre un fichero Excel y en el se escribe el listado resultante. Cinco ficheros Excel contenidos en rutas que contienen el texto 'FORO' en mayúsculas en alguna parte:
Power Automate y Excel. Un paso adelante.


Guarda el flujo creado si lo estimas oportuno y listo!!.

Increible ejercicio sin uso de programación :OO
Una herramienta potente... una herramienta Power ;-)

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.