Dans ce tutoriel, vous découvrirez quelques astuces pour fusionner des tableaux Excel en faisant correspondre des données dans une ou plusieurs colonnes, ainsi qu'en combinant des feuilles de calcul basées sur des en-têtes de colonne.
Lors de l'analyse de données dans Excel, à quelle fréquence réunissez-vous toutes les informations nécessaires dans une seule feuille de calcul ? Presque jamais! Il est très courant que différentes données soient dispersées sur de nombreuses feuilles de calcul et classeurs. Heureusement, il existe différentes manières de combiner des données de plusieurs tableaux en un seul, et ce tutoriel vous apprendra comment le faire plus efficacement.
Comment faire une jointure dans Excel
Comment fusionner deux tableaux dans Excel avec des formules
Comment joindre des tables avec RECHERCHEV
Comment fusionner des tableaux dans Excel avec INDEX EQUIV
Comment combiner des tables en faisant correspondre plusieurs colonnes
Joignez plusieurs tables en une seule avec Excel Power Query
Créer des connexions Power Query
Fusionner deux connexions dans une seule table
Sélectionnez les colonnes à ajouter dans la deuxième table
Quelle que soit la tâche que vous devez effectuer dans vos feuilles de travail, où cherchez-vous une solution ? Comme beaucoup d'utilisateurs, je vais généralement dans l'onglet Formules et j’ouvre une liste de fonctions. La fusion des tables ne fait pas exception.
Si vous voulez fusionner deux tables basées sur une colonne, RECHERCHEV est la bonne fonction à utiliser.
Supposons que vous ayez deux tables dans deux feuilles différentes : la table principale contient les noms du vendeur et des produits, et la table de consultation contient les noms et les montants. Vous souhaitez combiner ces deux tables en faisant correspondre les données de la colonne Vendeur :
Comme vous le voyez, l'ordre des noms dans la table principale ne correspond pas à celui de la table de consultation; par conséquent, une simple technique de copier / coller ne fonctionnera pas.
Pour combiner deux tables par une colonne correspondante (Vendeur), vous entrez cette formule dans C2 dans la table principale :
=RECHERCHEV($A2 ; 'Table de consultation'!$A$2:$B$8 ;2; FAUX)
Où:
Copiez la formule dans la colonne pour obtenir une table fusionnée composée de la table principale et des données correspondantes extraites de la table de recherche :
Notez que la fonction Excel RECHERCHEV a plusieurs limitations, dont les plus critiques sont :
1) l’impossibilité d'extraire les données d'une colonne à gauche de la colonne de recherche et
2) un numéro de colonne codé en dur rompt une formule lorsque vous ajoutez ou supprimez des colonnes dans la table de recherche. Du bon côté des choses, vous pouvez facilement réorganiser les colonnes retournées en modifiant simplement le nombre dans l'argument col_index_num.
Si vous recherchez une alternative plus puissante et plus polyvalente à la fonction RECHERCHEV, optez pour cette combinaison INDEX EQUIV :
INDEX(Matrice; EQUIV(valeur_cherché; table_recherche ; 0))
Je vais vous montrer comment utiliser cette formule pour lever les yeux de droite à gauche, ce que RECHERCHEV est incapable de faire.
Supposons que vous ayez une autre table de recherche avec les ID de commande dans la première colonne et que vous souhaitez copier ces ID dans la table principale en faisant correspondre les noms du vendeur. Pour une meilleure visualisation, les deux tableaux sont placés sur la même feuille :
Pour accomplir la tâche, vous fournissez les arguments suivants à la formule de correspondance d'index :
Matrice - $E$2:$E$8
valeur_cherché - $A2
table_recherche - $F$2:$F$8
Veuillez noter le signe $ qui verrouille les plages pour les empêcher de changer lorsque vous copiez la formule dans le tableau.
La formule complétée se présente comme suit :
=INDEX($E$2:$E$8; EQUIV($A2; $F$2:$F$8; 0))
… Et combine parfaitement les données de deux tables :
Si les deux tables que vous souhaitez joindre n'ont pas d'identifiant unique, tel qu'un identifiant de commande, vous pouvez faire correspondre les valeurs dans deux colonnes ou plus en utilisant cette formule :
INDEX(Matrice; EQUIV(1; (valeur_cherché1 = plage_cherché1) * (valeur_cherché2 = plage_cherché2) ; 0) ; numéro_col_retour)
Remarque : C'est une formule matricielle, donc n'oubliez pas d'appuyer sur Ctrl + Shift + Entrée pour la saisir correctement.
En supposant que vous ayez les deux tableaux suivants à combiner en un seul. Étant donné que la colonne ID de commande est manquante dans la table de recherche, la seule méthode permettant de faire correspondre les commandes est par vendeur et par produit :
Sur la base de la capture d'écran ci-dessus, définissons les arguments de notre formule :
Encore une fois, veillez à fixer toutes les plages avec des références de cellules absolues afin qu'elles ne changent pas lorsque vous copiez la formule:
=INDEX($F$2:$H$8;EQUIV(1; ($B2 =$F$2:$F$8) * ($C2 =$G$2:$G$8);0); 3)
Entrez la formule dans D3, appuyez sur Ctrl + Shift + Entrée, copiez-la dans les lignes ci-dessous et vérifiez le résultat :
Dans les cas où vous devez combiner plusieurs tables avec un nombre différent de lignes et de colonnes, Excel Power Query peut s'avérer utile. Cependant, sachez que la jonction de tables avec Power Query ne peut pas être réalisée en quelques clics, je vais donc en décrire brièvement les principales caractéristiques :
Pour ne pas encombrer votre classeur avec des copies de vos tables d'origine, nous allons les convertir en connexions, effectuer la fusion dans l'éditeur Power Query, puis charger uniquement la table résultante.
Pour enregistrer une table en tant que connexion dans Power Query, procédez comme suit :
Cela créera une connexion avec le nom de votre table / plage et l'affichera dans le volet Requêtes qui apparaît à droite de votre classeur.
Lorsque vous avez terminé, vous verrez toutes les connexions dans le volet Requêtes de classeur.
Avec les connexions en place, voyons comment vous pouvez joindre deux tables en une seule :
Dans l'onglet Données, dans le groupe Récupérer et transformer, cliquez sur le bouton Nouvelle requête, choisissez Combiner les requêtes dans la liste déroulante, puis cliquez sur Fusionner :
Dans la boîte de dialogue Fusionner, procédez comme suit :
Une fois les étapes ci-dessus terminées, l'éditeur Power Query affiche votre première table (Commandes) avec une colonne supplémentaire nommée comme votre deuxième table (Commissions) ajoutée à la fin. Cette colonne supplémentaire n'a pas encore de valeur, juste le mot "Table" dans toutes les cellules. Mais ne vous découragez pas, vous avez tout fait correctement et nous allons y remédier dans un instant!
À ce stade, vous disposez d'un tableau ressemblant à celui de la capture d'écran ci-dessous. Pour terminer le processus de fusion, procédez comme suit dans l'éditeur Power Query:
En conséquence, vous obtiendrez une nouvelle table contenant tous les enregistrements de votre première table et les colonnes supplémentaires de la seconde table :