Comparer 2 listes de 2 colonnes et afficher la ligne des cases communes

2

Je suis en train de préparer une base des données et je suis face à ce problème. Pour vous simplifier mon problème, je vous présente un petit exemple.

Voici 2 tableaux comme exemple :

Tableau 1 (feuille1) :

Pays  critère1 critère2 critère3 ... critère n
Canada   C1      C2      C3      ... Cn
France   F1      F2      F3      ... Fn
Belgique B1      B2      B3      ... Bn
Maroc    M1      M2      M3      ... Mn
Tunisie  T1      T2      T3      ... Tn

Tableau 2 (feuille2) :

Pays 
Canada
Belgique
Tunisie

Je veux que le tableau des résultats affiche les valeurs pour la liste des pays qui se répètent dans la liste des pays des deux feuilles.

Tableau Résultat :

Pays  critère1 critère2 critère3 ... critère n
Canada   C1      C2      C3      ... Cn
Belgique B1      B2      B3      ... Bn
Tunisie  T1      T2      T3      ... Tn
desertrose Posté le 21 août 2016, 15:23
par desertrose
Répondre
3

Bonsoir,

Je te propose la solution suivante :

http://www.cjoint.com/c/FHwweTvrog3

Cliques sur le lien et suis les instructions pour récupérer le classeur Excel.

Cette solution consiste à :

- créer une colonne technique devant la première colonne de la liste Données 1 (colonne A). 

Dans cette colonne, nous allons simplement tester si nous trouvons ou pas le pays dans la liste Données 2. Si nous trouvons, nous ajoutons 1 au contenu de la cellule supérieurs précédente sinon nous ajoutons 0.  Nous obtenons ainsi une numérotation qui évoluera de 1 à chaque fois que le pays existe dans les 2 listes (dans l'exemple, j'ai développé sur 50 lignes en plus de la ligne titre soit jusqu'à la ligne 51 - si plus nécessaire, il faudra simplement dupliquer par tirage)

 Cette colonne pourra être masquée une fois la mise au point terminée car elle n'est pas utile à l'opérateur mais uniquement techniquement.

Dans l'onglet Résultat, nous allons utiliser la particularité de la fonction RECHERCHEV qui, quand elle est paramétrés à FAUX, va toujours chercher la première référence correspondante à la demande.  Donc nous allons simplement chercher, grâce à la numérotations des lignes, la valeur 1 et puis 2 etc... (quand nous somme en A2, la fonction LIGNE() donne 2 auquel nous enlevons 1 =1 et ainsi de suite pour les lignes suivantes.

Nous pouvons donc afficher uniquement les pays qui son communs aux 2 listes

Ensuite, il suffit de désigner la colonne dans laquelle se trouve les informations correspondantes à la colonne où la formule se trouve.  Pour cela nous utilisons la fonction COLONNE() qui permet de progresser de 1 à chaque colonne.

Cette façon de faire permet de réaliser une formule unique duplicable dans toute la plage A2:D51

A toi de voir s'il faut plus de colonne : il te suffira de dupliquer par tirage.

Merci de confirmer si cela correspond à ce que tu attendais

A+

Chris

Posté le 23 août 2016, 00:25
par chris1945
  • Merci pour la réponse et pour l'effort fourni afin de me répondre, ça marche parfaitement sauf que ma base des données contient plus que 3000 sociétés (remplacées par pays dans l'exemple que j'ai proposé) donc c'est pénible de préparer la colonne technique et de vérifier les noms des sociétés une par une. – desertrose 25 août 2016, 20:34
2

Bonsoir,

Je reviens de quelques jours d'absence et je n'ai donc pas vu ton message.

Je suis surpris que tu parles de pénibilités pour la colonne technique.  En effet, il suffit de dupliquer par tirage la formule sur 3.000 lignes.  Il n'y a donc aucune difficulté à mon avis et je ne comprend pas ce que tu veux dire par "vérifier les noms des sociétés une par une" puisque tout se fait automatiquement et avec 3.000 lignes, Excel ne doit pas ralentir.

Si tu as des difficultés, sois un peu plus explicite sur les problèmes que tu rencontres.

A+

Chris

Posté le 6 septembre 2016, 20:31
par chris1945

Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :