EMPILER (VSTACK en anglais) est une fonction révolutionnaire d'Excel 365 qui combine plusieurs tableaux verticalement en une seule formule dynamique. Fini le copier-coller fastidieux quand tu dois consolider des données de plusieurs sources : EMPILER les empile ligne par ligne dans l'ordre que tu choisis, et le résultat se met à jour instantanément si les données sources changent. Cette fonction fait partie de la nouvelle génération de fonctions de tableaux dynamiques qui changent complètement la façon de travailler avec Excel.
Que tu gères des données réparties sur plusieurs feuilles, que tu consolides des rapports régionaux ou que tu compiles des listes de différentes équipes, EMPILER te fait gagner un temps considérable en automatisant entièrement la fusion.
Syntaxe de la fonction EMPILER
=EMPILER(tableau1; [tableau2]; [tableau3]; ...)EMPILER accepte jusqu'à 254 tableaux. Si les tableaux n'ont pas le même nombre de colonnes, Excel remplit les colonnes manquantes avec #N/A.
Comprendre chaque paramètre de la fonction EMPILER
Le premier tableau que tu passes donne le ton : c'est lui qui ouvre le résultat et fixe le nombre de colonnes attendu. Tous les suivants viennent se ranger dessous dans l'ordre exact où tu les écris, et seul ce premier argument est obligatoire — tu peux ensuite en empiler jusqu'à 253 autres ou aucun.
tableau1
: le premier tableau ou la première plage à empilerCe peut être une plage simple comme A1:C10, un tableau structuré comme VentesNord, ou un tableau littéral créé avec des accolades. Ce tableau définit la structure de base : tous les tableaux suivants devraient idéalement avoir le même nombre de colonnes.
Le résultat du tableau final commence par les lignes de ce premier tableau.
[tableau2], [tableau3], ...
: tous les tableaux supplémentaires à empiler sous le premier, dans l'ordre indiqué(facultatif)Chaque tableau est ajouté ligne par ligne. Tu peux en ajouter jusqu'à 253 supplémentaires (254 au total).
Si un tableau a moins de colonnes que les autres, Excel remplit automatiquement les colonnes manquantes avec #N/A pour maintenir la structure rectangulaire.
Astuce : Tu peux combiner EMPILER avec FILTRE pour consolider uniquement certaines lignes : =EMPILER(FILTRE(Tableau1; condition1); FILTRE(Tableau2; condition2)). C'est la façon la plus propre de fusionner des données filtrées.
Pas envie d'écrire la formule EMPILER à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Data analyst : consolider les ventes de plusieurs régions
Tu es data analyst et tu dois créer un rapport consolidé des ventes de trois régions différentes. Chaque région a son propre tableau nommé et tu veux les combiner en un seul rapport unifié, sans copier-coller manuellement chaque mois.
=EMPILER(VentesNord; VentesSud; VentesOuest) déverse les trois tableaux les uns sous les autres dans l'ordre indiqué. Le résultat compte autant de lignes que la somme des trois tableaux sources. Si les données sources changent (nouvelles ventes saisies, lignes ajoutées), le rapport consolidé se met à jour instantanément.
| A | B | C | |
|---|---|---|---|
| 1 | Produit | Ventes | Région |
| 2 | Laptop | 15 000 € | Nord |
| 3 | Souris | 2 500 € | Nord |
| 4 | Écran | 8 000 € | Sud |
| 5 | Clavier | 3 200 € | Sud |
| 6 | Tablette | 12 000 € | Ouest |
| 7 | Casque | 1 800 € | Ouest |
=EMPILER(VentesNord; VentesSud; VentesOuest)Contrôleur de gestion : ajouter des en-têtes à un rapport
Tu es contrôleur de gestion et tu reçois des extractions système sans ligne d'en-tête. Tu veux ajouter automatiquement une première ligne de noms de colonnes au-dessus des données, sans modifier le fichier source.
=EMPILER({"Mois";"Budget";"Réalisé"}; A2:C4) crée un tableau littéral de trois colonnes via les accolades, puis y empile les données dessous. La ligne d'en-tête est ajoutée dynamiquement : si les données en A2:C4 s'allongent, le tableau complet s'agrandit automatiquement.
| A | |
|---|---|
| 1 | Colonne résultat |
| 2 | Mois | Budget | Réalisé |
| 3 | Janvier | 50 000 € | 48 500 € |
| 4 | Février | 52 000 € | 54 200 € |
| 5 | Mars | 51 000 € | 49 800 € |
=EMPILER({"Mois";"Budget";"Réalisé"}; A2:C4)Astuce de pro : Pour créer un tableau 2D avec des accolades, sépare les colonnes d'une même ligne par un point-virgule (;) et passe à la ligne suivante avec un antislash (\). Exemple : {"A";"B"\"C";"D"} crée un tableau 2x2.
RH : compiler les congés de plusieurs équipes
Tu travailles aux ressources humaines et chaque manager gère les congés de son équipe dans une feuille séparée. Tu dois créer une vue consolidée de tous les congés prévus pour le mois, sans que les managers changent leurs habitudes.
=EMPILER(Feuil1!A2:C10; Feuil2!A2:C10; Feuil3!A2:C10) combine les trois feuilles en une seule liste. Chaque manager continue à saisir ses congés sur son onglet, et ta vue consolidée se met à jour automatiquement.
| A | B | C | |
|---|---|---|---|
| 1 | Employé | Date début | Date fin |
| 2 | Sophie Martin | 05/01/2025 | 09/01/2025 |
| 3 | Marc Dupont | 12/01/2025 | 16/01/2025 |
| 4 | Julie Bernard | 15/01/2025 | 19/01/2025 |
| 5 | Pierre Leroy | 20/01/2025 | 24/01/2025 |
| 6 | Claire Dubois | 22/01/2025 | 26/01/2025 |
=EMPILER(Feuil1!A2:C10; Feuil2!A2:C10; Feuil3!A2:C10)Chef de projet : fusionner les tâches de plusieurs sprints
Tu es chef de projet et tu gères ton backlog avec un tableau par sprint. Tu veux une vue d'ensemble de toutes les tâches planifiées pour les trois prochains sprints, pour analyser la charge globale et identifier les goulots d'étranglement.
=EMPILER(Sprint1!A2:C20; Sprint2!A2:C20; Sprint3!A2:C20) regroupe toutes les tâches des trois sprints en une seule liste. Tu peux ensuite envelopper ce résultat dans TRI ou FILTRE pour obtenir une vue triée par assigné ou par priorité.
| A | B | C | |
|---|---|---|---|
| 1 | Tâche | Assigné | Points |
| 2 | Développer API login | Alex | 8 |
| 3 | Design page accueil | Sarah | 5 |
| 4 | Tests unitaires | Marc | 3 |
| 5 | Intégration paiement | Alex | 13 |
| 6 | Optimisation DB | Julie | 8 |
| 7 | Documentation API | Marc | 5 |
=EMPILER(Sprint1!A2:C20; Sprint2!A2:C20; Sprint3!A2:C20)Astuce de pro : Pour voir toutes les tâches d'une personne sur tous les sprints, combine EMPILER avec FILTRE : =FILTRE(EMPILER(Sprint1!A2:C20; Sprint2!A2:C20); EMPILER(Sprint1!B2:B20; Sprint2!B2:B20)="Alex").
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction EMPILER
Neuf fois sur dix, le souci vient des colonnes : si tes tableaux n'ont pas tous la même largeur, Excel comble les manquantes avec #N/A au lieu de te bloquer, et tu te retrouves avec des trous dans le résultat. Les deux autres ratés sont plus francs : un #NOM? signe une version d'Excel trop ancienne, et un #DÉVERS! veut dire que le tableau n'a pas la place de se déployer parce que des cellules en dessous ou à droite sont déjà occupées.
Erreur #N/A dans certaines colonnes
Les tableaux que tu empiles n'ont pas le même nombre de colonnes. Excel remplit automatiquement les colonnes manquantes avec #N/A pour maintenir la structure rectangulaire du résultat.
Solution : Assure-toi que tous tes tableaux ont le même nombre de colonnes. Si certains en ont vraiment moins, ajoute des colonnes vides avant de les empiler, ou enveloppe le résultat dans SIERREUR pour remplacer les #N/A : =SIERREUR(EMPILER(...); "").
Erreur #NOM? : fonction non reconnue
Excel ne reconnaît pas EMPILER parce que la version utilisée ne la supporte pas. EMPILER est disponible uniquement dans Excel 365 et Excel 2021.
Solution : Vérifie ta version d'Excel (Fichier > Compte > À propos d'Excel). Si tu es sur une version antérieure, tu dois soit mettre à jour vers Excel 365, soit utiliser Power Query ou des macros VBA pour réaliser la consolidation.
Erreur #DÉVERS! : le tableau déborde sur d'autres données
Les tableaux dynamiques créés par EMPILER se déversent vers le bas et vers la droite. Si des cellules sont déjà occupées dans la zone de déversement, Excel affiche #DÉVERS! car il ne peut pas écraser des données existantes.
Solution : Déplace ta formule EMPILER dans une zone vide avec suffisamment d'espace en dessous et à droite. Supprime ou déplace les données qui bloquent le déversement. Utilise le petit triangle d'erreur pour voir quelles cellules sont concernées.
EMPILER vs ASSEMB.V vs ASSEMB.H vs CONCAT
Prends EMPILER quand tu veux poser des tableaux les uns sous les autres en gardant la grille intacte ; ASSEMB.V fait rigoureusement la même chose, c'est juste son autre nom. Bascule sur ASSEMB.H quand l'assemblage doit se faire côte à côte plutôt qu'en pile, et garde CONCAT pour quand tu cherches une simple chaîne de texte et non un tableau dynamique — c'est d'ailleurs la seule des quatre qui tourne dès Excel 2016.
| Critère | EMPILER | ASSEMB.V | ASSEMB.H | CONCAT |
|---|---|---|---|---|
| Direction | Vertical (lignes) | Vertical (identique) | Horizontal (colonnes) | Texte (chaîne unique) |
| Type de résultat | Tableau dynamique | Tableau dynamique | Tableau dynamique | Chaîne de texte |
| Conserve la structure | Oui | Oui | Oui | Non |
| Usage principal | Empiler des lignes | Identique à EMPILER | Ajouter des colonnes | Fusionner du texte |
| Version requise | Excel 365 / 2021 | Excel 365 / 2021 | Excel 365 / 2021 | Excel 2016+ |
Astuces avancées avec EMPILER
Enveloppe EMPILER dans TRI pour un rapport trié automatiquement
Quand tu empiles plusieurs tableaux régionaux ou mensuels, le résultat sort dans l'ordre des sources, pas nécessairement dans l'ordre voulu. En enveloppant dans TRI, tu obtiens directement un tableau consolidé et trié : =TRI(EMPILER(Tableau1; Tableau2; Tableau3); 1; 1) trie selon la première colonne en ordre croissant.
Changes dans les sources, tri automatique.
Ajoute une colonne pour tracer l'origine de chaque ligne
Après consolidation, tu ne sais plus de quel tableau vient chaque ligne. Une astuce : avant d'empiler, adjoint à chaque tableau une colonne d'identification via ASSEMB.H et SEQUENCE. =EMPILER(ASSEMB.H(SEQUENCE(NBLIGNES(Nord)); Nord); ASSEMB.H(SEQUENCE(NBLIGNES(Sud)); Sud)) ajoute un numéro de ligne source en première colonne.
Pratique pour du débogage ou des rapports d'audit.
EMPILER ne gère pas 12 onglets dynamiquement : utilise Power Query pour ça
Si tu as 12 onglets mensuels et que tu veux les consolider sans écrire 12 arguments, EMPILER ne peut pas le faire seule : il faut lister chaque source explicitement. Pour une consolidation vraiment dynamique qui s'adapte à l'ajout de nouveaux onglets, Power Query (Données > Obtenir des données > Depuis un classeur) est l'outil adapté.
À partir de 5-6 sources, évalue si Power Query n'est pas plus maintenable.
Questions fréquentes sur la fonction EMPILER
Quelle est la différence entre EMPILER et ASSEMB.V ?
Il n'y en a aucune ! ASSEMB.V (VSTACK en anglais) est simplement le nom alternatif d'EMPILER. Les deux fonctions font exactement la même chose : empiler des tableaux verticalement, ligne par ligne.
Microsoft a choisi de proposer les deux noms pour compatibilité. Si tu vois VSTACK dans de la documentation anglaise ou des tutoriels, c'est EMPILER en français.
Peut-on empiler des tableaux avec un nombre de colonnes différent ?
Oui, mais Excel remplira automatiquement les colonnes manquantes avec des erreurs #N/A. Si ton premier tableau a 3 colonnes et le second seulement 2, la troisième colonne du second tableau affichera #N/A.
Pour éviter cela, assure-toi que tous tes tableaux ont le même nombre de colonnes, ou utilise SIERREUR autour de la formule complète pour remplacer les #N/A par une valeur de ton choix.
EMPILER fonctionne-t-elle avec des données de feuilles différentes ?
Absolument, c'est même l'un de ses usages les plus puissants. Tu peux écrire =EMPILER(Feuil1!A1:B10; Feuil2!A1:B10) pour consolider des données réparties sur plusieurs onglets.
Tu peux même référencer des feuilles de classeurs externes (avec le chemin complet entre crochets), tant que les classeurs sources sont ouverts au moment du recalcul.
Que se passe-t-il si l'un des tableaux est vide ?
EMPILER ignore les plages vides. Si ton deuxième tableau ne contient aucune donnée, EMPILER n'affiche que les données du premier tableau sans générer d'erreur. Le résultat s'adapte dynamiquement à la taille réelle de chaque source.
EMPILER est-elle disponible dans toutes les versions d'Excel ?
Non, EMPILER fait partie des nouvelles fonctions de tableaux dynamiques. Elle est disponible uniquement dans Excel 365 et Excel 2021. Les versions antérieures (2019, 2016, etc.) ne la supportent pas et afficheront une erreur #NOM?.
Si tu dois gérer la compatibilité avec des versions anciennes, utilise Power Query pour la consolidation ou propose une alternative avec du VBA.
Pour aller plus loin
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

