Conserver la date de mise à jour la plus récente n'est pas une tâche facile à réaliser. En effet, vous ne pouvez pas utiliser l'outil de suppression des doublons car aucune ligne n'est identique.
Cet article va pour présenter une méthode pour solutionner le problème.
Présentation du problème
Il est très facile d'extraire sans doublon les données d'un tableau grâce à l'option du menu Données>Supprimer les doublons. Mais dans certains cas, l'outil ne permet pas de conserver certaines données spécifiques.
Par exemple dans le classeur suivant, nous avons un document qui contient des adresses de clients.
Seulement, nous ne souhaitons conserver que les données les plus récentes en se basant sur la colonne de mise à jour (la colonne G)
Dans ce cas de figure, l'outil d'extraction sans doublon ne peut pas nous aider. En utilisant l'outil Données>Supprimer les doublons le résultat est inopérant car pour chaque ligne, il y a des différences (numéro de téléphone notamment)
Pour autant, nous savons que nous devons nettoyer notre liste pour ne conserver que les dates de mise à jour les plus récentes.
Solution avec NB.SI.ENS
Toute l'astuce consiste à
- Trouver un identifiant unique pour chaque individu (ici l'email).
- Puis de comptabiliser le nombre de fois que nous retrouvons cet identifiant dans la liste.
Nous allons donc nous baser sur la fonction NB.SI.ENS pour faire ce travail MAIS avec une référence hybride pour la plage de données.
Une référence hybride est fixée sur une seule référence d'une plage de données. L'autre référence de la plage est laissée libre.
Détail des étapes de la solution
Construction de la formule
- Dans une nouvelle colonne, nous allons écrire la formule suivante
=NB.SI.ENS($H$2:H2,H2)
- Puis nous recopions cette formule pour toutes les cellules de la colonne
Le résultat est le suivant
Vous pouvez voir dans l'image le mail de Richard SAVARD est présent 3 fois. Dans la colonne que nous venons de créer, nous retrouvons 3 fois son mails dans notre liste avec les valeurs 1, 2 et 3.
Explication de la formule
La première référence de notre plage de données étant fixées ($H$2) et la seconde libre (H2), le fait de recopier cette formule va changer uniquement la seconde référence.
- Ainsi, en I5, la formule ne prendra en compte que les mails compris entre H2 et H5.
- En I10, la formule utilise la plage de H2 à H10
- et ainsi de suite pour tout le document.
Tri des données
Maintenant, nous allons trier notre tableau sur 2 clés
- Le mail de nos clients
- La date de mise à jour dans l'ordre décroissant (du plus récent au plus ancien)
Allez dans le menu Données>Trier et créer l'ordre de tri suivant
- Sélectionner le premier critère de tri (l'email)
- Ajouter un nouveau niveau de tri
- Sélectionner la colonne de date de mise à jour
- Changez l'ordre de tri
Après validation, les mails en doubles ou triples, se retrouvent les uns sous les autres.
Filtrer les données
Le travail est presque terminé ?
Il nous suffit maintenant d'utiliser le filtre d'Excel (Données>Filtre) sur la colonne que nous avons ajouté précédemment et de DECOCHER LA VAEUR 1.
De cette façon, nous n'affichons que les éléments que nous voulons supprimer.
Supprimer les lignes anciennes
- Sélectionnez toutes les lignes visibles
- Supprimez les avec un Clic-droit>Supprimer la ligne ou le raccourci clavier Ctrl + -
- Effacer le filtre de la colonne (cf image)
Notre liste est maintenant à jour des dernières informations sur nos clients sans le moindre doublon
Oliv'
28/03/2019 @ 15:38
Excellent exemple, explication limpide avec captures d'écran propres. Du très beau boulot et merci pour avoir solutionné mon pb, un gain de temps énorme. Merci beaucoup et bravo. Je vais continuer à fouiller ce site !