Recouper deux tableaux de données avec Excel

Réussir à recouper les informations contenues dans deux bases de données différentes sur Excel, c'est à mon sens l'exercice qui marque la limite entre un novice sur Excel et un utilisateur confirmé. Si vous maîtrisez cette procédure (qui n'a rien de compliqué), vous vous rendrez compte que c'est vous qu'on appellera à la rescousse pour toute question sur Excel.

Car mes nombreuses années passées en entreprise m'ont montré que c'est un besoin ULTRA courant, quelque soit le contexte.

Comprendre le principe

Comme toujours, je vais prendre un exemple. Ici il sera très simple, mais on peut imaginer des bases de données bien plus complexes et surtout bien plus longues.

Voici ma première base de données (ne soyez pas effrayé par ce mot barbare, il ne s'agit ici que deux colonnes et 7 lignes sur une feuille Excel). Voici mon premier onglet.

première base de données

Un deuxième onglet contient ma seconde base de données :

Seconde BDD

D'un côté j'ai des prénoms et les adresses e-mail correspondantes. De l'autre côté, des adresses e-mail et l'entreprise correspondante. Problème, pour organiser mon événement, j'ai besoin d'avoir l'information Prénom + Entreprise. Evidemment, dans ce cas c'est facile, je n'ai que 7 noms. Mais imaginons maintenant que cette liste contiennent 7000 contacts. On ne va tout de même pas traiter tout ça à la main.

La solution : la recherche verticale

J'en parlais déjà à l'époque dans cet article pour un cas très différent : la RECHERCHEV est l'une des fonctions les plus importantes à maîtriser sur Excel. Nous allons à nouveau l'utiliser.

Voici ce que nous allons faire : nous allons rechercher une information commune aux deux bases (je l'appelle en général la clé), car bien entendu si vous voulez recouper deux listes, il vous faut une information commune au deux.

En l'occurrence, nous allons rechercher l'adresse e-mail. Le tableau n°1 nous servira de base principale. Nous aimerions donc le compléter avec l'entreprise en colonne C.

base de données à compléter

Ecrivons en C2 cette formule : =RECHERCHEV(B2;Liste2!A1:B7;2;FAUX) et décomposons -la.

détail formule recherchev

B2 : correspond à l'information que je vais aller chercher dans le second tableau.

Liste2!A1:B7 : correspond à la seconde base de données. Dans mon cas, elle est située sur les cellules A1 à B7 dans l'onglet Liste2.

2 : il s'agit du numéro de colonne dans laquelle se trouve l'information que je cherche. Dans mon exemple, je cherche l'entreprise en colonne B. La colonne B est la 2e colonne de ma base de données.

FAUX : je ne vais pas vous embrouiller avec cet argument. Retenez simplement que vous devez écrire FAUX comme dernier argument.

NB : pensez à figer certaines cellules en utilisant le sigle $ afin de ne pas décaler les coordonnées de la seconde liste lorsque vous copierez la formule en C3, C4, etc. En l'occurrence Liste2!A1:B7 devient Liste2!$A$1:$B$7. On peut aussi faire encore plus simple en écrivant Liste2!A:B. Et voilà le résultat.

résultat complet

Attention au piège !

Une des règles de la fonction RECHERCHEV, c'est qu'on recherche toujours dans la première colonne de la seconde base de données. Dans le cas où les colonnes de la seconde base de données auraient été inversées, comme ci-dessous, comment aurions-nous fait ?

variante base de données n°2

Dans ce cas, il n'y a qu'une seule façon de procéder, il faut placer la colonne contenant l'information commune (la clé), ici l'adresse e-mail, au début du document. Soit en la dupliquant, soit en effectuant un couper-coller.

Cas particulier

Pour terminer, un point rapide sur un cas particulier que l'on rencontre fréquemment : les bases de données contiennent chacune des informations différentes, mais seule une partie des informations peut être recoupée. Ex. avec ces deux nouvelles bases :

Nouvelles bases de données

Nous avons ici quatre nouvelles personnes : Paul, Cyril, Charlotte et Arnaud. Mais on ne retrouve Paul et Cyril que dans la première liste et Charlotte et Arnaud uniquement dans la 2e. Ces absences vont donc générer des erreurs dans les formules : des erreurs #N/A.

Erreurs #NA

Ces erreurs ne sont pas graves, elles signifient simplement que les informations recherchées ne sont pas présentes dans la seconde base de données. En complément, je vous invite à parcourir cet article : Erreurs #N/A dans Excel, comment s’en sortir ?

Une bonne pratique pour recouper deux bases de données sur Excel

En tout cas, c'est en général de cette manière dont je procède. Créez un nouvel onglet et ajoutez en colonne A toutes les valeurs possibles de votre information commune, puis supprimez les doublons. Dans notre cas, on obtient une liste exhaustive des adresses e-mail. Puis créez les colonnes pour les informations à ajouter (ici Prénom et Entreprise) et créez les formules comme expliqué ci-dessus.

Comme toujours, je vous invite à télécharger gratuitement le document d'exemple ci-dessous.

Exemple

tableau final