Cómo sincronizar elementos de SharePoint a Excel en Power Automate
Este tutorial muestra cómo sincronizar elementos de una lista de SharePoint a un archivo Excel en OneDrive/SharePoint usando Power Automate. Es útil para disponer de informes offline, alimentar dashboards o compartir datos con quienes no usan SharePoint.
Requisitos previos
- Cuenta Microsoft con acceso a Power Automate.
- Lista de SharePoint con columnas simples (Texto, Número, Fecha).
- Archivo Excel con una tabla formateada (Table1) almacenado en OneDrive o SharePoint.
- Permisos para crear/editar flujos y acceder a los archivos/listas.
Paso 1: Estructurar la tabla Excel
Por qué: Power Automate escribe en tablas Excel, no en hojas sueltas. Abra Excel Online o Desktop, cree una tabla con encabezados iguales a los nombres de las columnas de la lista de SharePoint (p. ej.: ID, Title, Status, Data). Seleccione los datos e inserte la tabla; verifique que el nombre sea Table1 (o ajústelo en el flujo).
Paso 2: Crear un nuevo flujo automatizado
Por qué: queremos ejecutar la sincronización cuando se cree o modifique un elemento. En Power Automate, cree un flujo del tipo "Automated cloud flow" con el trigger "When an item is created or modified" (SharePoint).
Paso 3: Configurar el trigger de SharePoint
Explicación: elija el Site Address y la List Name. Esto garantiza que el flujo se dispare siempre que un usuario cree o modifique un elemento.
// Trigger (configuración en la UI) // Site Address: https://.sharepoint.com/sites/ // List Name: NomeDaLista
Paso 4: Obtener filas de la tabla Excel para evitar duplicados
Por qué: si quiere actualizar filas existentes en lugar de siempre añadir, es necesario comprobar si el ID del elemento de SharePoint ya existe en la tabla Excel. Use la acción "List rows present in a table" (Excel Online (Business)).
// Acción: List rows present in a table // Location: OneDrive for Business o SharePoint // Document Library: OneDrive // File: /Documents/Exports/Sync.xlsx // Table: Table1
Paso 5: Buscar la fila correspondiente
Explicación: añada una acción "Filter array" para buscar en la salida de List rows la fila con el mismo ID del elemento de SharePoint. Use una expresión para comparar: item()?['ID'] o la columna en la que guardó el ID.
// Filter array (condición) // From: body('List_rows_present_in_a_table')?['value'] // Condition: item()?['ID'] == triggerBody()?['ID']
Paso 6: Condición para Insert o Update
Explicación: añada una acción "Condition" que verifique si el array filtrado tiene length() > 0. Si existe, actualice la fila; si no, inserte una nueva row.
// Expression para Condition length(body('Filter_array')) > 0
Paso 7: Actualizar una fila existente
Para la rama "If yes": use la acción "Update a row" (Excel Online (Business)). Necesitamos la key column y key value — normalmente la columna ID de la tabla. Use la expresión que obtiene el primer elemento del filtro: body('Filter_array')[0]?['ID'] o la clave que configuró.
// Update a row // Key Column: ID // Key Value: body('Filter_array')[0]?['ID'] // Rellenar columnas: Title = triggerBody()?['Title'], Status = triggerBody()?['Status'], Data = triggerBody()?['Data']
Paso 8: Insertar una nueva fila
Para la rama "If no": use la acción "Add a row into a table". Mapee las columnas a los campos del trigger de SharePoint. Esto añade una fila cuando el elemento es nuevo.
// Add a row into a table // Table: Table1 // Columnas: ID = triggerBody()?['ID'], Title = triggerBody()?['Title'], Status = triggerBody()?['Status'], Data = triggerBody()?['Data']
Paso 9: Tratar errores comunes
Errores frecuentes: permisos insuficientes, archivo Excel abierto en Excel Desktop con bloqueo, nombres de columnas distintos. Soluciones rápidas: garantizar permisos, cerrar el archivo o usar un archivo en OneDrive/SharePoint con la conexión adecuada, comprobar los encabezados de la tabla.
Verificar el resultado
Creé o modifique un elemento en la lista de SharePoint y verifique el archivo Excel. Debe ver una nueva fila para elementos nuevos y actualizaciones para elementos existentes. En el historial del flujo en Power Automate puede ver cada ejecución y los outputs de cada acción para depuración.
Conclusión
Ahora tiene un flujo que sincroniza elementos de SharePoint a Excel, con lógica para evitar duplicados y actualizar filas. Próximos pasos: añadir mapeo de más columnas, tratamiento de anexos o ejecutar sincronización en masa usando "Recurrence". Consejo: pruebe con conjuntos pequeños y use la acción "Compose" para inspeccionar valores durante el desarrollo.