Saltar al contenido principal

Dividir un libro de Excel con varias hojas en archivos separados en Power Automate (4 acciones, cualquier número de hojas)

· 21 min de lectura
SEO and Content Writer

Un libro de trabajo con 5, 50 o 500 hojas se puede dividir en partes individuales. .xlsx archivos en un único flujo de Power Automate. PDF4me Excel - Hojas de cálculo separadas devuelve una matriz con un archivo por hoja; Aplicar a cada uno El bucle distribuye las escrituras a Dropbox, SharePoint, OneDrive o Dataverse. Esta guía describe la ejecución exacta que se muestra en las capturas de pantalla: una secuencia de 5 pestañas. Separate.xlsx en Dropbox se convierte Sheet1.xlsx a través de Sheet5.xlsx en una carpeta de salida. Flujo total: 4 acciones, cero código, se ejecuta en ~9 segundos de principio a fin..

El flujo de un vistazo
1. Manual trigger
Manually trigger a flow. Swap for any trigger that produces a workbook.
2. Get file content (path)
Dropbox path: /pdf4metest/excel/separate worksheets/Separate.xlsx
3. Excel - Separate Worksheets
PDF4me action. Splits the 5-sheet workbook into 5 single-sheet XLSXes.
4. Apply to each → Create file
Loop outputDocuments. Each iteration writes one sheet as its own .xlsx to Dropbox.
La versión corta

Un activador manual inicia el flujo. Dropbox Obtener el contenido del archivo usando la ruta lecturas Separar.xlsx (5 hojas, cada una con una lista diferente de registros de personas). Excel - Hojas de cálculo separadas devuelve un Documentos de salida Matriz con 5 entradas: {fileName: "Sheet1.xlsx", streamFile: "<base64>"} a través de Sheet5.xlsx. Un Aplicar a cada uno over outputDocuments se ejecuta una vez por hoja (la captura de pantalla muestra el 1 de 5 contador de iteraciones) y utiliza Crear archivo para colocar cada XLSX en /pdf4metest/excel/hojas de cálculo separadas/salida. Explore la carpeta de salida y allí encontrará los 5 archivos divididos, ordenados alfabéticamente.

Lo único que la gente pasa por alto: Aplicar a cada uno no es opcional

Excel - Separar hojas de cálculo devuelve un formación, no un solo archivo. El número de entradas depende del libro de trabajo de origen (2 hojas en → 2 entradas; 50 hojas en → 50 entradas). Siempre envuelva el siguiente paso en Aplicar a cada uno de ellos. Documentos de salida. Recogiendo Contenido del archivo Desde fuera del bucle no devuelve nada útil. Dentro del bucle, el selector de contenido dinámico expone Nombre del archivo y Contenido del archivo sobre el artículo actual.

Esto resuelve preguntas comunes del mundo real.

La gente busca esta solución con frases sorprendentemente específicas. Estas son las consultas reales a las que responde este flujo:

  • "¿Cómo puedo dividir automáticamente un archivo de Excel con varias hojas en archivos separados?" Sí. Este flujo hace exactamente eso. Simplemente arrastra el libro de trabajo original a Dropbox y la división y la carga se realizan automáticamente.
  • "¿Puede Power Automate guardar cada hoja como un archivo de Excel independiente?" Sí, mediante la acción PDF4me Connect y un bucle "Aplicar a cada elemento". Sin VBA ni scripts de Office.
  • "¿Tengo que escribir una acción por hoja?" No. La opción "Aplicar a cada elemento" maneja cualquier número de hojas. El cuerpo del flujo nunca cambia.
  • "¿Qué ocurre si el libro de ejercicios tiene 100 hojas?" El flujo es el mismo. El bucle simplemente se repite 100 veces. Cada iteración dura aproximadamente 1 segundo.
  • "¿Puedo cambiar el nombre de los archivos de salida?" Sí, cree el nuevo nombre con un paso o expresión de Compose dentro del bucle antes de Crear archivo. Consulte la sección de solución de problemas.

Lo que estás construyendo

Un flujo de Power Automate de cuatro acciones que toma cualquier documento de varias hojas. .xlsx y guarda un archivo por hoja de cálculo en una carpeta de destino. Es reutilizable en listas de recursos humanos, embudos de ventas divididos por región, informes mensuales divididos por mes, y cualquier otro elemento que se encuentre en varias pestañas dentro de un mismo libro de trabajo.

Flujo de Power Automate con cuatro acciones: Activar manualmente un flujo, Dropbox Obtener contenido de archivo usando ruta, PDF4me Excel - Separar hojas de cálculo, luego Para cada uno Crear archivo (mostrando iteración 1 de 5). Tiempos de ejecución 0 s, 1 s, 2 s, 5 s para Para cada uno, 1 s para Crear archivo.
El flujo completo. El bucle "Para cada uno" se ejecuta 5 veces (una vez por hoja de salida); cada iteración dura aproximadamente 1 segundo.

Lo que necesitas

  • Power Automate Cuenta con un flujo abierto en el diseñador de la nube. Abrir Power Automate.
  • Clave API de PDF4me. Obtén tu clave APIAgregue la conexión PDF4me Connect la primera vez que ejecute la acción.
  • Dropbox con una carpeta de origen y una carpeta de salida. Cualquier sistema de almacenamiento funciona: SharePoint, OneDrive y Dataverse se configuran de la misma manera.
  • Un libro de trabajo de Excel con varias hojas. Descargar archivo separado.xlsx para seguir las instrucciones al pie de la letra (5 pestañas, Registros de personas).

Guía rápida: qué hace cada parte

outputDocuments
The array the action returns. One entry per sheet. Always loop with Apply to each.
File Name (item)
Sheet name plus .xlsx extension. Pass directly into Create file File Name.
File Content (item)
Binary single-sheet workbook. Pass directly into Create file File Content.
Worksheet Indexes
Optional. Leave empty for all sheets. Comma-separated 1-based to restrict (e.g. 1,3).
Culture & Language
Defaults to en-US. Switch to fr-FR, de-DE, ja-JP, pt-BR for non-US sheet content.
Error Details Item
Itemised failure array. Empty on success; wire into a Condition for retry logic.

Una mirada a la entrada

Abierto Separate.xlsx en Excel. Tiene 5 pestañas de hoja (Hoja1 a Hoja5), cada una rellena con filas de registros de Personas: Nombre, Apellido, Género, País, Edad, Fecha, Id.

El archivo Separate.xlsx se abre en Excel y muestra la Hoja5 activa. Las columnas son: Número, Nombre, Apellido, Género, País, Edad, Fecha, ID. Aproximadamente 50 filas de registros. Las pestañas Hoja1, Hoja2, Hoja3, Hoja4 y Hoja5 son visibles en la parte inferior.
Libro de trabajo de origen. Cinco pestañas en la parte inferior, cada una con aproximadamente 50 filas de registros de personas.
Carpeta de origen de Dropbox /pdf4metest/excel/separate worksheets que contiene Separate.xlsx.
La carpeta de origen antes de que se ejecute el flujo. Solo un libro de trabajo.

Construye el flujo

Acción 1: Activar manualmente un flujo

Para realizar pruebas, el disparador manual es el más rápido. En producción, reemplácelo con Cuando se crea un archivo (Dropbox), Cuando se crea un elemento (SharePoint), Cuando llega un nuevo correo electrónico (Outlook), Reaparicióno cualquier otro desencadenante.

Acción 2: Dropbox - Obtener el contenido del archivo usando la ruta

Apúntelo al libro de trabajo de origen:

/pdf4metest/excel/separate worksheets/Separate.xlsx

Dejar Inferir tipo de contenido en su valor predeterminado () en Parámetros avanzados.

Dropbox Obtener contenido del archivo usando la acción Ruta. La ruta del archivo está configurada como /pdf4metest/excel/separate worksheets/Separate.xlsx. Parámetros avanzados Inferir tipo de contenido está activado.

Acción 3: PDF4me - Excel - Separar hojas de cálculo

Buscar PDF4me en el selector de acciones y selección Excel - Hojas de cálculo separadas. Configurar:

CampoValor utilizado en esta ejecución
File ContentFile Content from the previous Dropbox step (dynamic content)
File NameSeparate.xlsx
Culture & Language Settings (Advanced)en-US (default. change only for non-US locales)
PDF4me Excel - Acción de hojas de cálculo separadas configurada. Contenido del archivo asignado desde Dropbox Obtener contenido del archivo. Nombre del archivo Separate.xlsx. Parámetros avanzados que muestran Configuración de cultura e idioma en-US.
Configuración de acción. La cultura predeterminada es en-US. cambiar a fr-FR, Esa es la, Yo-JP etc., solo si el contenido de la hoja utiliza formatos de número/fecha que no sean de EE. UU.

Acción 4: Aplicar a cada uno → Dropbox - Crear archivo

Después de la acción Separar hojas de cálculo, agregue Aplicar a cada uno y seleccione Documentos de salida desde el selector de contenido dinámico. Dentro del bucle, arrastra un Dropbox Crear archivo acción y configurarlo de esta manera:

CampoValor utilizado en esta ejecución
Folder Path/pdf4metest/excel/separate worksheets/output
File NameFile Name (dynamic content from the current item)
File ContentFile Content (dynamic content from the current item)
Aplique esto a cada bucle que envuelva la acción Crear archivo. El menú desplegable Seleccionar una salida muestra los documentos de salida seleccionados en el paso anterior Excel - Separar hojas de cálculo.
La función Aplicar a cada iteración genera los documentos de salida. El nombre del archivo y el contenido del archivo del elemento actual aparecen en el selector de contenido dinámico dentro del bucle.
Dropbox crea un archivo dentro del bucle. Ruta de la carpeta /pdf4metest/excel/separate worksheets/output. Nombre del archivo contenido dinámico. Contenido del archivo contenido dinámico. Conectado a Dropbox.
Dentro del bucle. El nombre y el contenido del archivo provienen del elemento actual.

Guardar y hacer clic Prueba. Hecho.


El resultado

Abre la carpeta de salida en Dropbox. Ya están disponibles los 5 libros de trabajo de una sola hoja, cada uno nombrado según su hoja de origen:

Listado de carpetas de salida de Dropbox: Sheet1.xlsx, Sheet2.xlsx, Sheet3.xlsx, Sheet4.xlsx, Sheet5.xlsx.
Cinco cuadernos de trabajo separados, uno por cada hoja de origen, ordenados alfabéticamente.

Descargue los archivos de salida reales de esta ejecución: hoja1.xlsx, hoja2.xlsx, hoja3.xlsx, hoja4.xlsx, hoja5.xlsx.


Solución de problemas

Apply to each does not show File Name / File Content
Make sure the loop is iterating outputDocuments, not the action itself. Click the Apply to each dropdown, search "outputDocuments", and pick it.
Only one file appears in the output folder
Create file is OUTSIDE the loop. Drag it inside the Apply to each container so it runs once per item.
Output files all overwrite each other
Two causes: (a) File Name is hardcoded instead of mapped to dynamic content. delete and re-pick File Name from the inner item; (b) two sheets in the source share the same name. rename them in Excel or build a unique name in a Compose step.
Decimals read as text or dates
A sheet using 1.234,56 (comma decimal) gets misinterpreted because Culture & Language Settings is en-US. Switch to your locale (fr-FR, de-DE, pt-BR, etc).
Cross-sheet formula came out as #REF!
Expected. After splitting, =Sheet2!A1 from a Sheet1 output cannot resolve because Sheet2 is now in a different file. Plan each sheet to be self-contained, or pre-compute the values upstream.
Need a date prefix on each output file name
Inside the Apply to each, add a Compose before Create file with: concat(formatDateTime(utcNow(),'yyyy-MM-dd'),'_',items('Apply_to_each')?['fileName']). Point File Name at the Compose output. Result: 2026-06-02_Sheet1.xlsx.

Cuándo utilizar este patrón

Monthly report distribution
One workbook arrives with Jan, Feb, Mar tabs. Split, then email each tab to its owner.
Regional sales splits
Single workbook with one tab per territory becomes individual files for each regional manager.
HR roster fan-out
One company workbook with one tab per department. Upload each tab to the right SharePoint library.
Data prep for downstream tools
Many BI and accounting tools accept single-sheet inputs only. Split once, ingest many.
Compliance and auditing
Each split file is a self-contained artifact you can store, version, or sign without dragging the rest of the workbook.

¿Qué leer a continuación?


Preguntas frecuentes

How do I split an Excel file with multiple sheets into separate files automatically in Power Automate?+
Use the PDF4me Excel - Separate Worksheets action. It takes a single multi-sheet .xlsx as input and returns an outputDocuments array with one file per sheet. Wrap the result in an Apply to each loop and write each item with Create file. Four actions total: trigger, Get file content, Separate Worksheets, Apply to each → Create file.
Can Power Automate save each sheet as a separate Excel file without code?+
Yes. The PDF4me Excel - Separate Worksheets action is a no-code cloud connector. There is no VBA, no Office Script, no Power Automate Desktop required. it runs entirely in the Power Automate cloud designer and outputs ready-to-save .xlsx files.
What happens if the source workbook has a different sheet count next run?+
Nothing breaks. The action dynamically returns one outputDocuments entry per sheet present, and the Apply to each iterates whatever the array length is. Build the flow once with a 5-sheet sample and it will handle 2-sheet or 200-sheet workbooks identically.
Do the output files keep their sheet names?+
Yes. Each output file is named after its source sheet name plus the .xlsx extension. Sheet5 → Sheet5.xlsx. If you have custom sheet names (e.g. "Q1 2025"), the output file is "Q1 2025.xlsx" accordingly.
Will my formulas still work after the split?+
Intra-sheet formulas (everything that references cells on the same sheet) work as expected. the engine preserves cell values, number formats, and styles. Cross-sheet references like =Sheet2!A1 cannot survive because Sheet2 is no longer in the same file; expect those to become #REF!. Plan the workbook so each sheet is self-contained, or pre-compute the values upstream.
Can I use SharePoint, OneDrive, or Dataverse instead of Dropbox?+
Yes. Swap the Dropbox actions for SharePoint Get file content / Create file, OneDrive Get file content / Create file, or Dataverse Download file / Add file. The PDF4me action and its parameters are identical regardless of source.
How do I rename the output files (add a date prefix, replace spaces, etc.)?+
Inside the Apply to each loop, add a Compose step before Create file. Build the new name with concat() and formatDateTime() expressions, then bind Create file → File Name to the Compose output. Example: concat(formatDateTime(utcNow(),'yyyy-MM-dd'),'_',items('Apply_to_each')?['fileName']) produces 2026-06-02_Sheet1.xlsx.
Is there a limit on the number of sheets I can split?+
Practical limits are bounded by Power Automate run-time and action body size. A single workbook with hundreds of sheets is fine; the loop just iterates more times. For thousands of sheets, consider Power Automate concurrency settings or batching the work across multiple runs.
Does this work in Power Automate Desktop?+
PDF4me Connect is a cloud connector available in Power Automate (the web flow designer). For Power Automate Desktop, call the same Separate Worksheets REST endpoint with the HTTP action.

Comience