Aller au contenu principal

Fractionner un classeur Excel multi-feuilles en fichiers distincts dans Power Automate (4 actions, nombre de feuilles illimité)

· 21 minutes de lecture
SEO and Content Writer

Un classeur de 5, 50 ou 500 feuilles peut être divisé en feuilles individuelles. .xlsx fichiers dans un seul flux Power Automate. PDF4me Excel - Feuilles de calcul séparées renvoie un tableau avec un fichier par feuille ; Appliquer à chaque La boucle s'exécute et écrit les données vers Dropbox, SharePoint, OneDrive ou Dataverse. Ce guide décrit précisément le processus illustré dans les captures d'écran : une boucle à 5 onglets. Separate.xlsx dans Dropbox devient Sheet1.xlsx à travers Sheet5.xlsx dans un dossier de sortie. Flux total : 4 actions, zéro code, exécution de bout en bout en ~9 secondes.

Aperçu du flux
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 version courte

Un déclencheur manuel lance le flux. Dropbox Récupérer le contenu du fichier à l'aide du chemin d'accès lectures Separate.xlsx (5 feuilles, chacune avec une liste différente de fiches de personnes). Excel - Feuilles de calcul séparées renvoie un Documents de sortie tableau à 5 entrées : {fileName: "Sheet1.xlsx", streamFile: "<base64>"} via Sheet5.xlsx. Un Appliquer à chaque La fonction outputDocuments s'exécute une fois par feuille (la capture d'écran le montre). 1 sur 5 compteur d'itérations) et utilise Créer un fichier pour déposer chaque XLSX dans /pdf4metest/excel/feuilles de calcul séparées/sortieParcourez le dossier de sortie : les 5 fichiers fractionnés s’y trouvent, triés par ordre alphabétique.

Ce que les gens oublient souvent : Appliquer à chaque n'est pas optionnel

Excel - Séparer les feuilles de calcul renvoie un tableauIl ne s'agit pas d'un seul fichier. Le nombre d'entrées dépend du classeur source (2 feuilles → 2 entrées ; 50 feuilles → 50 entrées). Veillez à toujours inclure l'étape suivante dans une boucle « Appliquer à chaque élément ». Documents de sortieCueillette Contenu du fichier En dehors de la boucle, aucune valeur utile n'est renvoyée. À l'intérieur de la boucle, le sélecteur de contenu dynamique expose Nom de fichier et Contenu du fichier sur l'article actuel.

Ce produit répond à des questions courantes du monde réel

Les internautes recherchent cette solution avec une formulation étonnamment précise. Voici les requêtes exactes auxquelles ce flux répond :

  • « Comment puis-je diviser automatiquement un fichier Excel contenant plusieurs feuilles en fichiers distincts ? » Oui. Ce processus fait exactement cela. Déposez le classeur source dans Dropbox ; le fractionnement et le chargement se font automatiquement.
  • « Est-ce que Power Automate peut enregistrer chaque feuille dans un fichier Excel distinct ? » Oui, via l'action PDF4me Connect et une boucle « Appliquer à chaque élément ». Sans VBA ni scripts Office.
  • « Dois-je écrire une action par feuille ? » Non. L'action « Appliquer à chaque » gère n'importe quel nombre de feuilles. Le corps du flux reste inchangé.
  • « Et si le classeur contient 100 feuilles ? » Même déroulement. La boucle s'exécute 100 fois. Chaque itération dure environ 1 seconde.
  • « Puis-je renommer les fichiers de sortie ? » Oui, créez le nouveau nom à l'aide d'une étape ou d'une expression de composition à l'intérieur de la boucle avant la création du fichier. Consultez la section dépannage.

Ce que vous êtes en train de construire

Un flux Power Automate en quatre actions qui prend en charge n'importe quelle feuille multi-étapes .xlsx et enregistre un fichier par feuille de calcul dans un dossier de destination. Réutilisable pour les listes de RH, les pipelines de vente segmentés par région, les rapports mensuels segmentés par mois, bref, tout élément pouvant figurer sous forme de plusieurs onglets dans un même classeur.

Flux Power Automate avec quatre actions : déclenchement manuel, récupération du contenu d’un fichier Dropbox à partir de son chemin, extraction de feuilles de calcul Excel (PDF4me), puis création d’un fichier dans une boucle « Pour chaque » (itération 1 sur 5). Durée d’exécution : 0 s, 1 s, 2 s et 5 s pour la boucle « Pour chaque », 1 s pour la création du fichier.
Le flux complet. La boucle « Pour chaque » s'exécute 5 fois (une fois par feuille de sortie) ; chaque itération dure environ 1 seconde.

Ce dont vous avez besoin

  • Power Automate compte avec un flux ouvert dans le concepteur cloud. Ouvrir Power Automate.
  • Clé API PDF4me. Obtenez votre clé APIAjoutez la connexion PDF4me Connect lors de la première exécution de l'action.
  • Dropbox avec un dossier source et un dossier de sortie. Tout système de stockage est compatible : SharePoint, OneDrive, Dataverse, etc.
  • Un classeur Excel à plusieurs feuilles. Télécharger le fichier separate.xlsx pour suivre exactement (5 onglets, fiches Personnes).

Guide rapide : rôle de chaque partie

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.

Un coup d'œil aux données d'entrée

Ouvrir Separate.xlsx dans Excel. Il comporte 5 onglets (Feuille1 à Feuille5), chacun contenant des lignes d'enregistrements de personnes : Prénom, Nom, Sexe, Pays, Âge, Date, ID.

Le fichier Separate.xlsx est ouvert dans Excel, affichant la feuille 5. Les colonnes contiennent les informations suivantes : nombre, prénom, nom, sexe, pays, âge, date et identifiant. Le fichier contient environ 50 lignes d'enregistrements. Les onglets des feuilles (Feuille 1, Feuille 2, Feuille 3, Feuille 4 et Feuille 5) sont visibles en bas de page.
Classeur source. Cinq onglets en bas, chacun contenant environ 50 lignes d'enregistrements de personnes.
Dossier source Dropbox /pdf4metest/excel/separate worksheets contenant Separate.xlsx.
Le dossier source avant l'exécution du flux. Un seul classeur.

Construisez le flux

Action 1 : Déclencher manuellement un flux

Pour les tests, la gâchette manuelle est la plus rapide. En production, remplacez-la par Lorsqu'un fichier est créé (Dropbox), Lorsqu'un élément est créé (SharePoint), Lorsqu'un nouvel e-mail arrive (Outlook), Récurrence, ou tout autre déclencheur.

Action 2 : Dropbox - Récupérer le contenu d'un fichier à partir de son chemin d'accès

Indiquez-lui le classeur source :

/pdf4metest/excel/separate worksheets/Separate.xlsx

Partir Déduire le type de contenu par défaut (Oui) sous Paramètres avancés.

Action Dropbox : Récupérer le contenu du fichier à partir du chemin d'accès. Le chemin d'accès est défini sur /pdf4metest/excel/separate worksheets/Separate.xlsx. L'option « Déduire le type de contenu » est activée dans les paramètres avancés.

Action 3 : PDF4me - Excel - Feuilles de calcul séparées

Rechercher PDF4me dans le sélecteur d'actions et le choix Excel - Feuilles de calcul séparéesConfigurer :

ChampValeur utilisée dans cette exécution
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 - Action « Séparer les feuilles de calcul » configurée. Contenu du fichier mappé depuis Dropbox : obtenir le contenu du fichier. Nom du fichier : Separate.xlsx. Paramètres avancés : paramètres de langue et de culture (en-US).
Configuration de l'action. La culture par défaut est en-US. Passer à fr-FR, C'est le, I-JP etc. uniquement si le contenu de la feuille utilise des formats de nombre/date non américains.

Action 4 : Appliquer à chaque élément → Dropbox - Créer un fichier

Après l'action « Séparer les feuilles de calcul », ajoutez Appliquer à chaque et sélectionnez Documents de sortie depuis le sélecteur de contenu dynamique. À l'intérieur de la boucle, déposez un Dropbox. Créer un fichier action et configurez-la comme ceci :

ChampValeur utilisée dans cette exécution
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)
Appliquez cette méthode à chaque boucle englobant l'action « Créer un fichier ». La liste déroulante de sélection de sortie affiche les documents de sortie sélectionnés lors de l'étape précédente « Excel - Feuilles de calcul séparées ».
La boucle « Appliquer à chaque élément » s'applique à outputDocuments. Le nom et le contenu du fichier courant s'affichent dans le sélecteur de contenu dynamique à l'intérieur de la boucle.
Création d'un fichier Dropbox dans la boucle. Chemin du dossier : /pdf4metest/excel/separate worksheets/output. Nom du fichier : contenu dynamique. Contenu du fichier : contenu dynamique. Connecté à Dropbox.
À l'intérieur de la boucle. Le nom et le contenu du fichier proviennent de l'élément actuel.

Enregistrer et cliquer Test. Fait.


Le résultat

Ouvrez le dossier de sortie dans Dropbox. Les 5 classeurs à feuille unique sont disponibles, chacun portant le nom de sa feuille source :

Le dossier de sortie Dropbox contient les fichiers Sheet1.xlsx, Sheet2.xlsx, Sheet3.xlsx, Sheet4.xlsx et Sheet5.xlsx.
Cinq cahiers d'exercices distincts, un par feuille de référence, classés par ordre alphabétique.

Téléchargez les fichiers de sortie réels de cette exécution : feuille1.xlsx, feuille2.xlsx, feuille3.xlsx, feuille4.xlsx, feuille5.xlsx.


Dépannage

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.

Quand utiliser ce modèle

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.

Que lire ensuite ?


FAQ

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.

Commencer