Supprimer les doublons dans VBA
Nous présenterons comment supprimer les doublons dans le VBA avec des exemples.
Supprimer les doublons dans VBA
Lorsque vous travaillez avec des feuilles Excel avec des données en masse, il est possible que ces données contiennent des doublons. Il est essentiel de supprimer les doublons pour éviter tout calcul erroné. Pour cela, nous devons d’abord nettoyer nos données et supprimer les doublons. VBA fournit une fonction simple, RemoveDuplicates
, qui peut être utilisée à cette fin.
Nous devons d’abord sélectionner la plage dans laquelle se trouvent nos données, puis nous utiliserons la fonction RemoveDuplicates
sur cette plage. Nous devons également définir combien de colonnes doivent être vérifiées pour les doublons. Si nous avons des en-têtes dans la plage, nous devons également marquer l’en-tête comme un oui. Prenons un exemple et utilisons cette fonction. Tout d’abord, nous allons créer des données de démonstration comme indiqué ci-dessous.
Utilisons la fonction RemoveDuplicates
pour supprimer les doublons.
Exemple de code :
# VBA
Sub duplicateRemover()
Range("A1:B*").RemoveDuplicates Columns:=1
End Sub
Production:
La méthode RemoveDuplicates
est utilisée sur une plage. Si des doublons sont trouvés, nous pouvons supprimer n’importe quelle ligne mais conserver la ligne d’origine avec toutes les valeurs.
La méthode RemoveDuplicates
ne fonctionne que sur les colonnes, pas sur les lignes.
Supprimer plusieurs colonnes en double dans VBA
Lors de la suppression des doublons, il peut être dangereux de supprimer les doublons en ne prenant que les données d’une colonne. Les données dupliquées dans une colonne peuvent avoir quelque chose de différent dans la suivante, ce qui en fait un élément unique au lieu d’un doublon.
Nous pouvons facilement comparer plusieurs colonnes dans la méthode RemoveDuplicates
en passant plusieurs colonnes dans un tableau, comme indiqué ci-dessous.
Exemple de code :
# Vba
Sub duplicateRemover()
ActiveSheet.UsedRange.RemoveDuplicates Columns:=Array(1, 2)
End Sub
Production:
Lorsque nous avons comparé les deux colonnes, cela n’a supprimé que les colonnes qui avaient des doublons basés sur les deux colonnes, pas une seule. Il n’est pas nécessaire de toujours fournir des colonnes dans l’ordre, nous pouvons envoyer des colonnes que nous voulons comparer dans n’importe quel ordre, et nous pouvons même utiliser les colonnes 1 et 5.