Excel : filtrer les enregistrements de données en double à l'aide d'une macro

Anonim

Filtrez vos listes Excel avec une macro de manière à ce que plusieurs entrées n'apparaissent qu'une seule fois dans une nouvelle liste cible et nettoyez ainsi vos données.

De nombreuses listes contiennent des entrées en double. Parfois, il est important de filtrer ces entrées d'une liste. Par exemple, vous pouvez utiliser une liste de ventes pour créer une liste dans laquelle chaque client n'apparaît qu'une seule fois - cela peut être important pour les analyses de marché, par exemple.

Le tableau de la figure suivante montre une petite liste Excel avec des nombres dans la colonne B.

Vous souhaitez créer une nouvelle liste à partir de cette liste, dans laquelle les numéros n'apparaissent plus deux fois. Le nombre 21, qui se trouve dans les cellules B3, B5 et B14 de la liste d'origine, n'apparaîtrait qu'une seule fois dans la nouvelle liste.

Il existe plusieurs façons de le faire avec Excel. Si vous souhaitez utiliser une macro, vous pouvez utiliser les commandes VBA suivantes :

Sous liste sans doublons ()
Dim Source As Range
Cible dim comme plage
Définir la source = Plage ("b1")
Définir la cible = Portée ("d1")
Source.EntireColumn.AdvancedFilter Action : = xlFilterCopy, _
CriteriaRange : = Source.EntireColumn, CopyToRange : = Target, Unique : = True
Fin du sous-marin

Après avoir démarré la macro, Excel filtre le tableau et affiche le nouveau tableau de la cellule D1. La figure suivante montre le résultat :

Vous pouvez voir que chaque valeur n'apparaît qu'une seule fois dans la liste des résultats.

Utilisez la variable SOURCE pour spécifier la colonne de votre table dans laquelle se trouvent les données à partir de laquelle vous souhaitez générer une nouvelle liste sans entrées en double. La macro utilise toujours la totalité de la colonne appartenant à la référence que vous définissez avec SOURCE. Utilisez la variable pour définir n'importe quelle adresse de cellule dans la colonne correspondante.

Avec la variable TARGET, vous déterminez où Excel écrit votre liste de résultats. La nouvelle liste commence à la position que vous spécifiez avec cette variable.

La macro fonctionne avec la feuille de calcul active à la fois pour la zone source et la zone cible.

Pour insérer la macro dans un tableau, ouvrez le classeur correspondant et appuyez sur la combinaison de touches ALT F11 dans toutes les versions d'Excel pour démarrer l'éditeur VBA. Appelez la commande INSERT - MODULE et insérez les commandes VBA. Pour démarrer la macro à partir d'Excel, utilisez la combinaison de touches ALT F8.