Comment supprimer les doublons dans Excel : commande, formules, Power Query
Par Mirko Peters ·
Comment supprimer les doublons dans Excel : utilisez Données, Supprimer les doublons, ou conservez les données d’origine avec UNIQUE, des formules et Power Query. Étapes, limites et erreurs à éviter.
Traduit automatiquement par IA à partir de l'article original. Lire l'original en anglais
Pour supprimer les doublons dans Excel, sélectionnez vos données, allez dans Données > Supprimer les doublons, cochez les colonnes qui déterminent ce qui est considéré comme un doublon, puis sélectionnez OK. Excel supprime chaque ligne qui répète les valeurs de ces colonnes et conserve la première. Cet article s’adresse aux utilisateurs d’Excel qui nettoient des listes, des exports et des rapports et qui veulent choisir la méthode adaptée. Vous découvrirez d’abord la commande, puis les moyens de repérer les doublons avant de les supprimer, les options qui préservent vos données sources, et enfin quelques pistes d’automatisation pour les tâches récurrentes.
Points clés
- Sélectionnez vos données, ouvrez Données, puis Supprimer les doublons, cochez les colonnes qui définissent un doublon et sélectionnez OK. Excel supprime la ligne entière et conserve la première correspondance.
- La suppression est définitive : copiez donc d’abord les données dans une autre feuille. Ctrl+Z ne fonctionne que tant que vous n’avez pas effectué une autre action.
- Excel compare ce qui est affiché dans la cellule : 3/8/2006 et 8 mars 2006 sont donc considérés comme des valeurs différentes. Harmonisez d’abord les formats.
- Si vous souhaitez examiner les doublons avant de les supprimer, mettez-les en évidence avec la mise en forme conditionnelle ou signalez-les à l’aide d’une colonne auxiliaire avec NB.SI.
- UNIQUE et Power Query fournissent une liste propre sans toucher aux données sources, et Power Query répète le nettoyage à chaque actualisation.
Excel propose plusieurs outils pour cela, car le mot « doublon » peut avoir des sens différents. Parfois, il s’agit d’une ligne entièrement identique. Parfois, il s’agit du même identifiant client avec un numéro de téléphone différent. Décidez de ce que vous entendez avant de cliquer sur quoi que ce soit.
Supprimer les doublons avec la commande de l’onglet Données
C’est la méthode la plus rapide et celle dont la plupart des utilisateurs ont besoin. Elle suit l’article de Microsoft sur le filtrage des valeurs uniques et la suppression des valeurs en double.
- Sauvegardez les données. Copiez la plage dans une autre feuille ou un autre classeur. Microsoft est clair sur ce point : les doublons sont supprimés définitivement.
- Sélectionnez la plage. Cliquez sur une cellule quelconque de vos données, ou dans un tableau Excel, ou sélectionnez vous-même la plage. Seule la plage ou le tableau sélectionné est modifié. Les cellules situées en dehors restent inchangées.
- Ouvrez la commande. Allez dans Données puis sélectionnez Supprimer les doublons dans le groupe Outils de données.
- Choisissez les colonnes. Dans la boîte de dialogue, cochez les colonnes qu’Excel doit comparer. Vous pouvez utiliser Tout sélectionner ou Tout désélectionner. Si la première ligne contient les noms de colonnes, conservez Mes données comportent des en-têtes cochée.
- Sélectionnez OK. Excel affiche un message indiquant le nombre de valeurs en double supprimées et le nombre de valeurs uniques restantes.
Faites attention à l’étape 4, car elle piège souvent. Une ligne n’est un doublon que si toutes les colonnes que vous avez cochées concordent. Prenons une liste avec ID, Nom et Prix. Si vous cochez ID et Nom mais pas Prix, deux lignes ayant le même ID et le même nom sont des doublons, même si leurs prix diffèrent, et Excel supprime alors toute la deuxième ligne, prix compris. Si vous voulez conserver chaque ligne où quelque chose diffère, cochez toutes les colonnes. Si l’ID seul définit un enregistrement, ne cochez que l’ID, et soyez conscient de ce que vous allez supprimer.
Appuyez sur Ctrl+Z juste après la commande si le résultat vous semble incorrect. Ne comptez pas dessus plus tard.
Quelle ligne est conservée : triez d’abord
Microsoft indique que la première occurrence est conservée et que les lignes identiques suivantes sont supprimées. L’ordre des lignes détermine donc le résultat. Si vous avez une liste de contacts avec plusieurs entrées par personne et que vous voulez la plus récente, triez par date, de la plus récente à la plus ancienne, puis lancez Supprimer les doublons. Si vous voulez la ligne dont l’adresse e-mail est renseignée, triez pour que ces lignes apparaissent en premier. Le tri fait partie du nettoyage normal ici, ce n’est pas un bonus.
Ce qui est considéré comme identique
Excel compare ce qui est affiché dans la cellule, et non ce qui est stocké. Dans l’exemple de Microsoft, 3/8/2006 et 8 mars 2006 sont traités comme deux valeurs différentes, bien qu’il s’agisse de la même date. Il en va de même pour les nombres formatés différemment ou pour un texte suivi d’un espace. L’article sur la recherche et la suppression des doublons précise également que les totaux affichés par Excel ensuite peuvent inclure des cellules vides ou des espaces.
Avant de supprimer quoi que ce soit, uniformisez l’apparence des cellules. Appliquez un seul format de date, supprimez les espaces superflus (la fonction SUPPRESPACE s’en charge) et vérifiez que les nombres ne sont pas stockés sous forme de texte. Les pages de Microsoft n’indiquent pas si la commande ignore la casse ; testez-la donc sur une petite plage si la casse est importante pour vous.
Quand la commande refuse de s’exécuter
Vous ne pouvez pas supprimer les doublons dans des données comportant des plans ou des sous-totaux. Supprimez d’abord le plan et les sous-totaux, puis lancez la commande.
Examinez les doublons avant de les supprimer
Microsoft recommande de filtrer ou de mettre en surbrillance les doublons avant de les supprimer. Cela prend une minute et évite la plupart des regrets.
Mettre en surbrillance les doublons avec la mise en forme conditionnelle
- Sélectionnez les cellules à vérifier.
- Dans l’onglet Accueil, ouvrez Mise en forme conditionnelle, puis Règles de mise en surbrillance des cellules, puis Valeurs en double.
- Choisissez un style de surbrillance et sélectionnez OK.
Chaque valeur répétée est désormais colorée. Vous ne pouvez pas appliquer cette méthode à la zone Valeurs d’un tableau croisé dynamique. Elle vérifie une colonne à la fois : une ligne qui ne se répète que sur plusieurs colonnes ne sera donc pas mise en évidence. Dans ce cas, il faut une colonne auxiliaire.
Signaler les lignes en double avec une colonne auxiliaire
Une colonne auxiliaire affiche VRAI ou FAUX en regard de chaque ligne. Elle vous permet de filtrer, de vérifier, puis de supprimer.
- Insérez une colonne à côté de vos données et ajoutez un en-tête tel que « Doublon ? ».
- Si vous vérifiez la colonne A, saisissez cette formule en B2 :
=NB.SI(A$2:A2;A2)>1 - Recopiez la formule vers le bas. La première fois qu’une valeur apparaît, vous obtenez FAUX. Chaque apparition suivante donne VRAI.
- Filtrez la colonne auxiliaire sur VRAI. Vérifiez ces lignes. Supprimez-les si ce sont bien des doublons.
Comme la plage A$2:A2 s’agrandit à mesure que vous recopiez la formule, seules les entrées suivantes sont signalées, et la première est laissée intacte. C’est précisément le comportement de Supprimer les doublons.
Pour vérifier plusieurs colonnes à la fois, créez une colonne de clé qui les assemble : =A2&"|"&B2&"|"&C2. Appliquez ensuite la fonction NB.SI à cette clé. Placez un séparateur, tel que la barre verticale, entre les champs. Sans séparateur, « 12 » suivi de « 34 » et « 1 » suivi de « 234 » donnent tous deux « 1234 » et seraient considérés comme le même enregistrement.
Le filtrage présente aussi un inconvénient. Si vous supprimez les lignes filtrées en les sélectionnant, vérifiez que seules les lignes visibles et signalées sont sélectionnées, et faites-le sur une copie. En cas de doute, triez plutôt la colonne auxiliaire et supprimez en une seule fois le bloc de lignes VRAI.
Obtenir une liste sans doublons en conservant la source
Il arrive que vous ne souhaitiez rien supprimer. Vous avez seulement besoin d’une liste propre pour une liste déroulante, une synthèse ou un import. Trois options conviennent ici.
La fonction UNIQUE
Dans Excel pour Microsoft 365, Excel 2024 et Excel 2021, =UNIQUE(A2:A100) renvoie chaque valeur distincte de la plage, et le résultat se déverse dans les cellules situées en dessous. Microsoft indique que la fonction est également disponible dans Excel pour le web et dans les applications mobiles. La syntaxe est =UNIQUE(array,[by_col],[exactly_once]) :
arrayest la plage à vérifier. Si elle contient plusieurs colonnes, UNIQUE compare des lignes entières.by_colvaut VRAI si vous souhaitez comparer des colonnes au lieu de lignes. Omettez-le pour la comparaison habituelle des lignes.exactly_oncevaut VRAI si vous ne voulez que les lignes qui n’apparaissent qu’une seule fois dans les données. Si vous l’omettez, vous obtenez chaque ligne distincte.
Le résultat se met à jour lorsque la source change. Si la source est un tableau Excel et que vous utilisez des références structurées, la plage de déversement s’ajuste au fur et à mesure que vous ajoutez ou supprimez des lignes. Pour obtenir une liste triée, encapsulez la formule : =SORT(UNIQUE(A2:A100)).
La paire d’arguments optionnels compte plus qu’on ne le pense. =UNIQUE(A2:A100,,TRUE) renvoie les valeurs qui n’apparaissent qu’une seule fois, ce qui est une question différente de « supprimer les copies en trop ». Demandez-vous laquelle vous est nécessaire.
Une limite : les versions antérieures d’Excel (2019 et précédentes) ne disposent pas de UNIQUE. La page de Microsoft ne mentionne que les versions citées ci-dessus.
Filtre avancé
Cette méthode fonctionne dans toutes les versions de bureau et copie le résultat à un autre emplacement.
- Sélectionnez vos données.
- Accédez à Données > Avancé dans le groupe Trier et filtrer.
- Choisissez Copier vers un autre emplacement.
- Saisissez une cellule dans la zone Copier dans et cochez Uniquement les enregistrements uniques.
- Sélectionnez OK.
Vos données d’origine restent en place, et les lignes uniques apparaissent au nouvel emplacement.
L’ancienne méthode avec formule
Si vous ne pouvez pas utiliser UNIQUE, saisissez =IF(COUNTIF($A$2:A2,A2)=1,A2,"") dans une nouvelle colonne, puis recopiez-la vers le bas. Chaque valeur n’apparaît qu’une fois, et les répétitions deviennent des chaînes vides. Copiez la colonne, collez-la en tant que valeurs, puis filtrez les cellules vides. C’est peu élégant, mais ça fonctionne partout.
Gérer les correspondances partielles et les différences de casse
Les données réelles sont rarement des copies parfaites. Trois situations reviennent sans cesse.
Doublons exacts. Toutes les colonnes cochées correspondent. La commande gère très bien ce cas.
Correspondances partielles. La colonne clé se répète, mais d’autres champs diffèrent, par exemple le même identifiant client avec deux adresses différentes. Ici, vous devez décider quelle version est la bonne. Triez les données pour placer la bonne en premier, puis supprimez les doublons sur la seule colonne clé. Vous pouvez aussi signaler les répétitions avec la colonne auxiliaire et les examiner manuellement. Aucun outil ne peut vous dire quelle adresse est correcte.
Différences de casse. Selon la documentation de Microsoft, Power Query est sensible à la casse : « Apple » et « apple » ne sont donc pas des doublons. La solution de contournement suggérée consiste à convertir la colonne en majuscules ou en minuscules à l’aide d’une transformation avant de supprimer les doublons. Cela modifie les valeurs stockées ; conservez donc la colonne d’origine si vous avez encore besoin de l’orthographe exacte.
Automatiser : Power Query et VBA
Pour un nettoyage ponctuel, la commande suffit. Pour un fichier que vous nettoyez chaque semaine, mettez en place une solution qui se répète.
Power Query
Si vos données proviennent d’un fichier CSV, d’une base de données ou d’un autre classeur, supprimez les doublons au moment de l’importation. Power Query enregistre l’étape et la réexécute à chaque actualisation.
- Chargez les données dans l’Éditeur Power Query. Si elles se trouvent déjà dans une feuille de calcul, sélectionnez une cellule des données et choisissez Requête > Modifier, ou utilisez Données > Obtenir des données pour charger une nouvelle source.
- Cliquez sur l’en-tête d’une colonne pour la sélectionner. Maintenez la touche Maj ou Ctrl enfoncée pour en sélectionner d’autres. Les colonnes n’ont pas besoin d’être adjacentes.
- Accédez à Accueil > Supprimer les lignes > Supprimer les doublons.
- Fermez et chargez le résultat.
La page de Microsoft sur la conservation ou la suppression des lignes en double dans Power Query détaille ces étapes. Ses recommandations sur les doublons méritent d’être connues : ce sont les colonnes sélectionnées qui déterminent ce qui est considéré comme un doublon, et Power Query ne garantit pas que la première ligne d’un ensemble soit conservée. Si le choix de la ligne conservée compte, ne vous fiez pas uniquement au tri. Microsoft renvoie à ses indications « Conserver le tri » dans l’article sur les problèmes courants de Power Query. Une option associée, Conserver les doublons, fait l’inverse : elle ne conserve que les lignes dont les valeurs apparaissent plusieurs fois, ce qui permet de contrôler rapidement une liste.
Si vous fusionnez deux tables, réfléchissez à l’endroit où doit intervenir la déduplication. Supprimer les doublons de chaque source avant la fusion garde une fusion légère et prévisible. Les supprimer après la fusion nettoie ce que la fusion a créé. Faites votre choix en fonction de l’origine de vos doublons, et vérifiez le nombre de lignes dans l’aperçu avant de charger les données.
Macro VBA
Si vous répétez le même nettoyage sur des classeurs que vous ouvrez chaque jour, une macro peut être une solution. L’objet Range possède une méthode RemoveDuplicates, documentée dans la référence VBA de Microsoft. Elle prend en paramètres les colonnes à comparer et indique si la première ligne contient des en-têtes. L’exemple fourni par Microsoft est le suivant :
ActiveSheet.Range("A1:C100").RemoveDuplicates Columns:=Array(1,2), Header:=xlYes
Cette ligne compare les deux premières colonnes de la plage A1:C100 et traite la première ligne comme un en-tête. Pour l’utiliser, appuyez sur Alt+F11, insérez un module, collez la ligne à l’intérieur d’une Sub, puis enregistrez le fichier au format de classeur prenant en charge les macros (.xlsm). Testez-la d’abord sur une copie. Une macro supprime aussi définitivement que la commande, et Ctrl+Z ne restaurera pas les lignes. Votre équipe informatique peut également bloquer les macros : vérifiez-le avant de créer une solution que vos collègues ne pourront pas exécuter. Si vous souhaitez approfondir le langage, la page VBA rassemble des contenus associés.
Excel pour le web et mobile
Les articles de Microsoft sur la suppression des doublons ne mentionnent que les versions de bureau d’Excel (Microsoft 365, 2024, 2021, 2019 et 2016) et ne disent rien du web ni des applications mobiles. Microsoft ne décrit pas la commande Supprimer les doublons pour ces versions : ne bâtissez donc pas de processus dessus. Ce que Microsoft documente pour le web et le mobile, c’est la fonction UNIQUE. Utilisez-la pour obtenir une liste propre sur ces appareils, et effectuez la suppression définitive sur le bureau.
Erreurs courantes
- Lancer la commande sans sauvegarde. Une fois le fichier fermé, les lignes sont perdues définitivement.
- Cocher les mauvaises colonnes. En omettre une modifie les lignes considérées comme des doublons, et c’est toute la ligne qui est supprimée, et non seulement la cellule répétée.
- Oublier de trier au préalable, puis s’étonner que l’ancien enregistrement ait été conservé à la place du nouveau.
- Comparer des cellules d’apparence identique mais formatées différemment, comme des dates écrites de deux façons ou du texte contenant des espaces en fin de chaîne.
- Tenter d’exécuter la commande sur des données groupées ou avec sous-totaux. Supprimez-les d’abord.
- Considérer
UNIQUEavecexactly_oncedéfini sur VRAI comme un moyen de supprimer les doublons en trop. Cette option ne renvoie que les valeurs qui n’apparaissent qu’une seule fois : les valeurs répétées disparaissent donc complètement du résultat.
Sujets connexes à explorer
- Mettez en évidence les doublons avec la mise en forme conditionnelle et signalez les lignes répétées à l’aide d’une colonne auxiliaire NB.SI avant de supprimer quoi que ce soit. Ces deux méthodes sont décrites ci-dessus.
- Nettoyez les données dès l’importation. Une étape Power Query écarte les doublons à chaque actualisation, et fonctionne bien avec les fichiers CSV et d’autres systèmes.
- Empêchez les doublons dès la saisie. La validation des données avec une formule personnalisée peut être configurée pour empêcher les utilisateurs de saisir une valeur déjà présente. Testez-la d’abord sur une petite feuille.
- Automatisez les tâches répétitives avec une macro, et apprenez à l’exécuter en toute sécurité sur une copie.
- Fusionner des données provenant de plusieurs sources, origine fréquente des doublons. Planifiez l’ordre du nettoyage et de la fusion.
Prochaine étape
Avant votre prochain nettoyage, copiez les données, mettez en évidence les doublons avec la mise en forme conditionnelle et comptez-les. Ensuite, lancez Supprimer les doublons sur la copie, et comparez les totaux aux chiffres indiqués par Excel.