Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Extraire les lignes répétées
Jusqu'à maintenant, nous avons essentiellement exploité la
fonction Excel Unique pour purger des colonnes ou des tableaux entiers de leurs
répétitions. Mais il est aussi tout à fait possible de produire le cheminement inverse.
Sur l'exemple illustré par la capture, nous travaillons à partir d'un tableau présentant quelques
répétitions. Mais certaines sont des leurres. En effet, il existe des
homonymes avec des
dates de naissance différentes. Sur la droite et dans un second tableau, nous parvenons à extraire un exemplaire de chaque
ligne strictement identique avec au moins une autre.
Classeur Excel à télécharger
Nous proposons de baser l'étude sur ce tableau des répétitions piégeuses.
Nous trouvons le
tableau des candidats sur la gauche de la feuille, entre les
colonnes B et E. Les
lignes strictement identiques y sont repérées à l'aide d'une judicieuse
règle de mise en forme conditionnelle exploitant la
fonction Nb.Si.Ens. Si vous souhaitez la consulter :
- Cliquer sur l'une des cellules du tableau, par exemple B5,
- Dans la section Styles du ruban Accueil, cliquer sur le bouton Mise en forme conditionnelle,
- En bas des propositions, choisir la commande Gérer les règles,
- Dans la boîte de dialogue, cliquer sur le bouton Modifier la règle,
Il faut que les données de chaque colonne soient identiques avec une autre ligne.
Les cellules répétées
Pour débuter simplement, nous souhaitons développer l'astuce suivante : Sans doublons, nous devons filtrer les données sur les cellules répétées. Dans un premier temps, nous souhaitons agir sur la colonne des noms pour révéler les semblables. Dans l'argument du critère de la
fonction Filtre, la fonction qui permet de déceler les
redondances est la
fonction Nb.Si.
- Sélectionner la première case de la grille d'extraction en cliquant sur la cellule G4,
- Taper le symbole égal (=) pour initier la syntaxe de la formule matricielle,
- Inscrire la fonction d'unicité, suivie d'une parenthèse, soit : Unique(,
- Lui imbriquer la fonction de filtre, suivie d'une parenthèse, soit : Filtre(,
- Désigner le tableau à filtrer en sélectionnant la plage de cellules B4:E15,
- Puis, taper un point-virgule (;) pour passer dans l'argument du critère de la fonction Filtre,
C'est là précisément et dans ce traitement récursif que nous devons confronter toutes les lignes les unes avec les autres pour déceler les répétitions et extraire les rangées que nous souhaitons. Il est donc question d'engager la
fonction de dénombrement conditionnelle sur la colonne des noms.
- Inscrire la fonction de dénombrement, suivie d'une parenthèse, soit : Nb.Si(,
- Désigner la colonne des noms en sélectionnant la plage de cellules B4:B15,
- Puis, taper un point-virgule (;) pour passer dans l'argument du critère,
Dans ce raisonnement matriciel, c'est cette même plage que nous devons lui confronter pour compter les répétitions.
- Désigner de nouveau l'intégralité des noms en sélectionnant la plage de cellules B4:B15,
- Fermer la parenthèse de la fonction Nb.Si,
- Puis, construire le critère suivant : >1 ,
L'objectif est de repérer tout ce qui est compté plus d'une fois, donc tout ce qui se répète.
- Fermer la parenthèse de la fonction Filtre,
- Fermer la parenthèse de la fonction Unique,
- Enfin, valider la formule par la touche Entrée du clavier,
Les résultats tombent et confirment que nous sommes sur la bonne voie même si des détails restent à régler. Les lignes extraites sont bien moins nombreuses que dans le tableau d'origine. Elle n'est pas pleinement satisfaisante dans la mesure où elle fait notamment ressortir le nom Louya. Or il existe un homonyme avec une date de naissance différente. Donc il ne s'agit pas des mêmes personnes.
Les lignes répétées
C'est la raison pour laquelle, ligne à ligne, la comparaison doit être effectuée colonne à colonne. En conséquence, nous devons recouper le premier décompte avec les suivants sur les autres colonnes. Si une ligne répond favorablement à tous ces critères avec une autre, nous saurons effectivement qu'il s'agit d'une rangée strictement identique. Nous devons donc recouper ces dénombrements avec les autres colonnes.
- Sélectionner de nouveau la cellule G4,
- Dans la barre de formule, ouvrir une parenthèse devant la fonction Nb.Si,
- Cliquer alors après le critère d'inégalité de la fonction Nb.Si,
- Taper le symbole de l'astérisque (*) pour annoncer le recoupement à suivre,
- Ouvrir une nouvelle parenthèse pour accueillir le nouveau dénombrement conditionnel,
- Inscrire de nouveau la fonction de dénombrement, suivie d'une parenthèse : Nb.si(,
- Désigner cette fois tous les prénoms en sélectionnant la plage de cellules C4:C15,
- Taper un point-virgule (;) pour passer dans l'argument du critère de la fonction Nb.Si,
- Désigner ces mêmes prénoms à confronter en sélectionnant encore la plage C4:C15,
- Fermer la parenthèse de la fonction Nb.Si,
- Comme précédemment, construire le critère d'inégalité suivant : >1,
- Fermer la parenthèse de ce second critère,
C'est le même processus que nous devons répéter maintenant sur les autres colonnes pour révéler les égalités parfaites, ligne à ligne.
- Terminer la syntaxe comme indiqué en gras :
=UNIQUE(FILTRE(B4:E15; (NB.SI(B4:B15; B4:B15)>1)*(NB.SI(C4:C15; C4:C15)>1)*(NB.SI(D4:D15; D4:D15)>1)*(NB.SI(E4:E15; E4:E15)>1)))
Nous cherchons donc à filtrer les égalités parfaites.
- Valider la formule par la touche Entrée du clavier,
Sur le recoupement conjoint des colonnes, ligne à ligne, nous nous apercevons que la liste des lignes strictement répétées et non uniques, est beaucoup plus mince.
Faut-il encore que les personnes soient des homonymes, qu'elles aient strictement la même date de naissance et qu'elles aient obtenu le même score. C'est la petite prouesse que nous venons de réaliser dans l'emploi dérivé de cette fabuleuse
fonction Unique. En effet, les deux lignes que nous obtenons sont strictement les seules à avoir au moins un homologue dans la source de donnée.