Comment trouver et supprimer les doublons dans Excel en un rien de temps !
Avez-vous déjà essayé de trouver et supprimer des doublons dans Excel ? Si oui, vous savez certainement à quel point cela peut être laborieux. Mais pas de panique, dans ce tutoriel, je vais vous présenter trois méthodes simples et efficaces pour trouver et supprimer facilement les doublons dans Excel. Que vous travailliez dans les domaines de la finance ou de l'analyse de données, ces astuces nous seront particulièrement utiles pour éliminer rapidement tous les doublons de vos fichiers.
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
Tutoriel Vidéo
Partie 1 :
Partie 2 :
1. Comment identifier rapidement des doublons dans une feuille ?
Dans Excel, nous parlons de doublon lorsque dans une ligne ou une cellule d’une feuille de calcul, nous retrouvons plusieurs fois une valeur identique. Les doublons peuvent être un problème courant dans les feuilles de calcul, en particulier lorsque nous travaillons avec de grandes quantités de données.
C’est pourquoi il est important de savoir détecter les doublons dans une feuille de calcul, tout d'abord, parce que les doublons peuvent fausser nos résultats et rendre l’analyse de ces données moins précise.
En plus de cela, les doublons peuvent également prendre de la place inutile au sein de la feuille, ce qui augmentera la place occupée par le fichier lors de son enregistrement, et pourra même affecter les performances globales du fichier.
Avant de voir comment supprimer les doublons d’une feuille de calcul, voyons tout d’abord comment les détecter en un rien de temps.
En effet, Excel dispose d'une fonction intégrée pour détecter les doublons dans une feuille de calcul.
Voici comment l'utiliser :
- Pour commencer, nous sélectionnons la plage de données à vérifier, celles-ci pouvant être stockées sur une ou plusieurs colonnes. Dans ce dernier cas, ce seront toutes les cellules de chaque ligne qui sera analysée pour la détection des doublons.
- Ensuite, dans l'onglet Accueil, nous déroulons l’option « Mise en forme conditionnelle » > « Mise en surbrillance des cellules » > « Valeurs en double ».
- Excel nous présente alors une boîte de dialogue nommée « Mise en surbrillance des cellules en double », dans laquelle nous allons définir une couleur de mise en évidence pour les doublons :
- Pour finir, nous validons la mise en valeur des cellules en double en cliquant sur le bouton « OK ».
Les doublons de la plage des cellules sélectionnée seront désormais mis en évidence avec la couleur choisie.
2. Comment supprimer les doublons ?
Maintenant que nous avons identifié tous les doublons dans la feuille Excel, il est temps de les supprimer.
Pour commencer, je nous propose de découvrir la méthode classique proposée par Excel.
Comme nous l’avons fait dans la partie précédent, la première étape consiste à sélectionner les données qui contiennent les doublons éventuels.
Une fois les données sélectionnées, nous allons rendre dans l'onglet « Données » du ruban afin de cliquer sur le bouton « Supprimer les doublons » dans le groupe « Outils de données » :
Excel affiche alors une boîte de dialogue dans laquelle nous allons pouvoir choisir les colonnes à prendre en compte pour la recherche de doublons en cochant les cases correspondantes.
Si plusieurs colonnes sont cochées, seules les lignes pour lesquelles toutes les valeurs sont en double seront supprimées.
En revanche, si nous sélectionnons une seule colonne, Excel ne conservera que les lignes sur lesquelles les données se présentent pour la première fois seront conservées.
Pour cocher ou décocher rapidement toutes les colonnes, nous pouvons utiliser les boutons correspondants (« Sélectionner tout » et « Désélectionner tout »).
Si les cellules sélectionnées ont des en-têtes de colonne, assurez-vous que la case « Mes données ont des en-têtes » est cochée.
Pour finir, nous pouvons cliquer sur le bouton « OK » pour finaliser la suppression des doublons.
Il faut savoir que le comportement présenté ici pourra être légèrement différent en fonction de la manière dont nous avons sélectionné les cellules par rapport aux cellules environnantes.
En effet, si Excel détecte des cellules adjacentes qui pourraient être incluses dans l’analyse, alors celui-ci nous affichera une invite supplémentaire lorsque nous allons demander la suppression des doublons pour nous demander si nous souhaitons étendre les cellules d’analyse.
Si nous choisissons d’étendre la sélection en cours, Excel va alors nous proposer de supprimer les doublons en considérant l’intégralité des colonnes de la base, comme nous venons de le voir dans l’exemple précédent.
En revanche, si nous choisissons de conserver la plage des données précédemment sélectionnées, alors Excel ne supprimera que les doublons de la colonne choisie, ce qui pourra générer des décalages dans les lignes du tableau :
De plus, les doublons des colonnes adjacentes seront conservés.
3. Filtrer les valeurs uniques
Lorsque nous travaillons avec des données volumineuses dans Excel, il peut être nécessaire de filtrer les valeurs uniques pour obtenir une vue d'ensemble de ces données sans pour autant devoir supprimer les doublons comme nous venons de le faire dans la partie précédente.
Cela pourra en effet nous aider à identifier rapidement les valeurs qui apparaissent une seule fois dans une plage de cellules.
3.1. Différence entre filtrer les valeurs uniques et supprimer les doublons
Avant de commencer à filtrer les valeurs uniques, il est important de comprendre la différence entre filtrer les valeurs uniques et supprimer les doublons.
Lorsque nous supprimons des doublons dans une plage de cellules, vous conservez une seule occurrence de chaque valeur.
Cela signifie que toutes les lignes contenant des doublons sont supprimées de la plage de cellules et nous pourrons plus être récupérées.
En revanche, lorsque nous appliquons un filtre permettant de n’afficher que les valeurs uniques, les doublons seront bien masqués, mais elles seront conservées.
3.2. Filtrer les valeurs uniques avec le filtre avancé
Pour filtrer les valeurs uniques dans Excel, nous pouvons utiliser la fonction de filtre avancé.
Voici les étapes à suivre :
- Nous commençons par sélectionner la plage de cellules que nous souhaitons filtrer
- Puis, dans l'onglet « Données » du ruban Excel nous cliquons sur l’icône « Filtre avancé »
- Dans la boîte de dialogue « Filtre avancé », nous sélectionnons l'option « Sur place »
- Dans le champ « Plage de liste », nous vérifions que la plage de cellules proposée correspond bien à nos cellules sélectionnées
- Nous cochons également l’option « Extraction sans doublon » pour filtrer les données répétées :
- Pour finir, nous validons le filtre avancé en appuyant sur « OK »
Les valeurs vont maintenant être filtrées afin de n’afficher que des valeurs uniques.
Pour réafficher les lignes filtrées, il suffit de se rendre à nouveau dans le menu « Données », afin de sélectionner cette fois-ci « Effacer », ce qui aura pour effet d’effacer le filtre avancé mis en place et donc de réafficher les lignes correspondantes.
3.3. Filtrer sur place ou vers un nouvel emplacement
Ici, nous avons choisi de filtrer les valeurs uniques directement « Sur place », ce qui a eu pour effet de masquer les lignes avec des valeurs en doublon.
Mais nous aurions également pu choisir de les copier vers un nouvel emplacement en choisissant « Copier vers un autre emplacement » et dans ce cas, les valeurs uniques seront copiées dans un nouvel emplacement que nous pourrons choisir.
4. Supprimer les doublons en 1 clic avec une macro VBA
Maintenant, je vais nous montrer une autre méthode qui nous permettra de supprimer les doublons en un seul clic grâce à une macro VBA.
Cette méthode pourra nous faire gagner beaucoup de temps si vous avez régulièrement besoin de supprimer des doublons dans vos feuilles de calcul.
Évidemment, il s’agit d’une méthode plus avancée que la précédente, mais nous n’aurez pas besoin de maîtriser VBA pour suivre ce tutoriel, car nous reviendrons sur chaque ligne de la macro.
En plus de cela, nous ne développerons pas directement la macro, nous utiliserons en effet Excel pour réaliser le développement de base à notre place.
Une macro VBA est un programme que nous pouvons enregistrer dans Excel pour automatiser une série d'actions. Cela nous permet de gagner du temps en automatisant des tâches répétitives et en évitant d’éventuelles erreurs de développement.
4.1. L’enregistreur de macro VBA
Comme je nous l’expliquai à l’instant, nous allons utiliser l’enregistreur de macro pour générer le code VBA.
Il s’agit d’une fonctionnalité d'Excel qui permet d'enregistrer les actions que nous effectuons dans Excel et de les transformer en une macro VBA.
Pour enregistrer la macro de suppression des doublons, suivez ces étapes :
- Pour commencer, nous cliquons sur le petit bouton d’enregistrement de macro nommé « Enregistrer la macro » que nous retrouvons en bas, dans la barre d’état :
- Ensuite, nous donnons un nom à notre macro (par exemple « supprimerDoublons ») et nous choisissons l'endroit où nous souhaitons enregistrer la macro.
- Nous pouvons ensuite cliquer sur « OK » pour commencer l'enregistrement de la macro.
- Maintenant, tout ce que nous allons faire sur Excel sera enregistré et traduit en lignes de code VBA.
- Nous pouvons maintenant répéter l’opération que nous avions découverte dans la partie précédente.
- Pour finir, une fois les doublons supprimés de la liste, il ne reste plus qu’à cliquer sur le bouton « Arrêter l'enregistrement » dans la barre d’état pour stopper l’enregistrement de la macro.
Par défaut, la macro de suppression des doublons que nous venons d’enregistrer supprime effectivement tous les doublons contenus dans la sélection, mais non pas en fonction de cellules choisies par l’utilisateur, mais uniquement celles qui étaient déjà sélectionnées au moment de l’enregistrement de la macro.
Pour nous en rendre compte, il suffit de sélectionner d’autres cellules, puis de lancer la macro en appuyant sur les touches [Alt]+[F8] afin de lancer la boîte de dialogue d’exécution de la macro.
Après avoir double-cliqué sur « supprimerDoublons », nous pourrons constater qu’aucune modification n’a été effectuée sur les cellules sélectionnées…
En revanche, si nous saisissons une valeur déjà présente dans la plage des cellules dans lesquelles nous avions supprimé les doublons lors de l’enregistrement de la macro, nous pourrons constater que ce doublon va disparaître, même si nous sélectionnons une autre plage de cellules.
4.2. Visionner et modifier la macro VBA
Pour supprimer spécifiquement les doublons des cellules sélectionnées, nous devons modifier la macro.
Pour cela, allons devoir Visual Basic Editor, qui est l’outil de développement des applications en VBA.
Il existe plusieurs options pour lancer cet outil, la plus simple étant d’utiliser le raccourci clavier [Alt]+[F11].
Ensuite, depuis la fenêtre du projet, nous double-cliquons sur la macro « supprimerDoublons » que nous venons d’enregistrer afin de l’ouvrir.
Puis, il nous suffira de modifier le code de la macro, en remplaçant le code suivant :
Sub supprimerDoublons()
ActiveSheet.Range("$F$4:$F$10").RemoveDuplicates Columns:=1, Header:=xlNo
End Sub
Par :
Sub supprimerDoublons()
Selection.RemoveDuplicates Columns:=1, Header:=xlNo
End Sub
an>
Ici, nous choisissons donc de supprimer les doublons de la sélection.
Étant donné que l’argument « Columns » est égal à « 1 », nous choisissons ici de ne supprimer que les doublons présents dans la première colonne des cellules sélectionnées.
Cet argument permet donc de spécifier le numéro de la colonne que nous souhaitons analyser à l’intérieur de la sélection.
Toute la difficulté va alors se présenter lorsque nous allons souhaiter effectuer l’analyse sur l’ensemble des colonnes sélectionnées.
Pour cela, nous devrons en effet utiliser comme argument une liste de tous les numéros de colonne, de « 1 » jusqu’au nombre de colonnes sélectionnées.
Cette liste devra alors prendre la forme d’un tableau VBA (un « Array ») comme ceci : Array(1, 2, 3) s’il y a trois colonnes dans la sélection.
Pour cela, nous devrons donc ajouter les lignes suivantes juste avant la ligne de notre macro.
Tout d’abord, nous allons déclarer deux variables : « listeColonnes » et « i ».
La première, « listeColonnes » est un tableau qui stockera le numéro des colonnes à partir desquelles nous supprimerons les doublons.
La seconde, « i » est une variable que nous utiliserons un peu plus tard pour passer en revue les colonnes sélectionnées.
Dim listeColonnes() As Variant, i As Integer
Ensuite, nous allons dimensionner le tableau
« listeColonnes » que nous venons de déclarer pour que sa taille corresponde au nombre de colonnes sélectionnées, ce qui nous permettra ensuite de pouvoir y stocker les numéros des colonnes correspondantes.
ReDim listeColonnes(Selection.Columns.Count - 1)
Enfin, nous pouvons mettre en place une boucle For… Next pour parcourir toutes les colonnes sélectionnées et y stocker leur numéro dans le tableau « listeColonnes » :
For i = 1 To Selection.Columns.Count
listeColonnes(i - 1) = i
Next
Maintenant que le tableau « listeColonnes » enregistre les numéros des colonnes sélectionnées, nous
allons pouvoir modifier la ligne de suppression des cellules dupliquées comme ceci :
Selection.RemoveDuplicates Columns:=(listeColonnes), Header:=xlGuess
Nous utilisons donc le tableau « listeColonnes » comme paramètre « Columns » pour supprimer les doublons dans les colonnes sélectionnées en utilisant la méthode « RemoveDuplicates » de la sélection.
Attention de bien encapsuler la variable « listeColonnes » entre parenthèses.
En effet, l'argument « Columns » attend une liste de colonnes sous la forme d’un tableau. En utilisant ces parenthèses, nous forçons ainsi la méthode « RemoveDuplicates » à traiter la variable « listeColonnes » comme un tableau.
Pour finir, nous modifions également l’argument « Header » pour lui donner la valeur « xlGuess ».
En effet, la macro doit fonctionner sur les cellules sélectionnées, or nous ne savons pas à l’avance si ces cellules ont un en-tête ou non.
Dans ce cas-là, l'option « xlGuess » permet de laisser à Excel le soin de déterminer si les données sélectionnées contiennent ou non un en-tête en examinant les données de la première ligne et en déterminant si elles ont des noms de colonnes cohérents.
Si Excel détermine qu'il y a un en-tête, il supprimera les doublons de toutes les lignes sauf la première.
Si Excel ne détecte pas d'en-tête, il supprimera les doublons de toutes les lignes.
4.3. Exécuter la macro en 1 clic
Maintenant que notre macro est terminée, nous allons souhaiter l’exécuter rapidement.
La méthode classique pour lancer une macro consiste à utiliser le raccourci clavier [Alt]+[F8] pour afficher la fenêtre de lancement des macros.
Pour faciliter le lancement de la macro, sans avoir besoin d’afficher cette fenêtre, nous pouvons insérer un bouton directement sur la feuille de calcul.
Ici, nous allons souhaiter insérer une zone de texte, que nous transformerons ensuite en bouton.
Pour cela, rendons-nous dans le menu « Insertion » du ruban, afin de cliquer sur le bouton « Zone de texte » situé sur la droite.
Nous pouvons ensuite dessiner la zone de texte à l'emplacement souhaité dans notre feuille de calcul.
Puis, nous saisissons le titre que nous voulons donner à ce bouton, et nous pouvons éventuellement le mettre en forme si nous le souhaitons.
Pour transformer cette zone de texte en bouton de lancement de la macro, nous effectuons un clic droit sur la zone de texte afin de sélectionner « Affecter une macro ».
Dans la boîte de dialogue qui apparaît, nous sélectionnons la macro « supprimerDoublons », puis nous validons en appuyant sur le bouton « OK ».
Maintenant, il ne nous reste plus qu’à sélectionner les cellules et appuyer sur ce bouton pour supprimer automatiquement les doublons.