Créer une macro pour supprimer les doublons dans une même colonne en VBA

mimy

XLDnaute Occasionnel
Bonjour à tous,

J'ai un petit problème, malgré mes recherches sur des forums, je n'arrive toujours pas à régler mon problème.

J'ai dans une feuille Excel et dans la colonne A une liste de prénoms:
-Marie
-Jean
...

Je voudrais supprimer les prénoms qui sont répétées plusieurs fois dans cette même colonne.

J'ai mis en pièce jointe un exemple de ce que je voudrais avoir.


Merci de m'aider :)
 

Pièces jointes

  • Exemple.xlsx
    11.1 KB · Affichages: 150

Staple1600

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonsoir à tous

mimy:
pas besoin de macro.
Tu peux utiliser le Filtre élaboré en cochant Extraction sans doublons.
197130d1316695124t-besoin-dune-fonction-excel-du-type-regroupement-de-valeurs-en-fonction-de-dou.jpg
(je me permets d'emprunter l'image déposée par eriic sur un autre fil d'XLD pour illustrer mon propos)
 
Dernière édition:

mimy

XLDnaute Occasionnel
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour Staple1600,

Merci pour ta réponse. Je sais qu'il existe le filtre mais je voudrais créer un bouton où cette macro serait affectée.

Je voudrait vraiment que ce soit en VBA.
 

Staple1600

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Re


Dans ce cas, tu peux appliquer le filtre élaboré tout en laissant tourner l'enregistreur de macros.
Tu obtiendras ainsi une macro de base perfectible par la suite.
 

Staple1600

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Re

Ce qui donnerait un truc du genre (ici légèrement remanié)
Code VBA:
Sub Macro1()
'
' Macro enregistrée le 09/05/2013 par un temps maussade et frisquet
'
Columns(5).Clear
Range("A1:A8").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("E1" _
), Unique:=True
End Sub





Ensuite il ne reste plus qu'à affecter cette macro un bouton ;)

EDITION
: Bonsoir philippe ;)
 
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour à tous,

voir fichier joint

à+
Philippe

Edit: Bonjour Staple macro enregistrée par un temps ensoleillé :):)
 

Pièces jointes

  • 111.xlsm
    16.6 KB · Affichages: 369
  • 111.xlsm
    16.6 KB · Affichages: 237
  • 111.xlsm
    16.6 KB · Affichages: 277
Dernière édition:

mimy

XLDnaute Occasionnel
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour Phlaurent55,

c'est exactement ce que je voulais merci beaucoup!

Juste un détail, si par exemple dans la colonne B il y a l'âge de ces personnes, comment fait on pour supprimer la ligne entière?

Merci encore
 

Staple1600

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Re

Re,

J'y ai pensé mais je veux vraiment éviter l'enregistreur de macro.

Merci

Pour quelle raison? C'est pourtant très formateur quand on débute en VBA ;)

Que reproches-tu au code VBA de mon précédent message qui fut enfanté par celui-ci et ce sans péridurale ?

La macro de mon précédent message supprime pourtant les doublons, non ?
 

mimy

XLDnaute Occasionnel
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour,

Je ne reproche rien à ton code :) je voulais simplement savoir comment supprimer un ligne entiere si dans la colonne A il y a des doublons. :)
 

Staple1600

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonsoir


On s'en fiche de mon code, je voulais juste souligner qu'à mon sens négliger l'enregistreur de macros n'est pas une bonne option.

Par exemple, dans le cas qui t'intéresse, supprimer une ligne entière, tu aurais pu trouver seule la bonne syntaxe vba grâce à lui ;)

Code:
Sub Macro1()
' Macro enregistrée le 10/05/2013 par inadvertance avant le tit café du matin
Selection.EntireRow.Delete
End Sub
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour à tous,

Juste pour mon information : XL 2007 ne permet pas la suppression des doublons par la barre d'outils comme sur XL 2010 et XL 2013 ?

Capture.3.png

A+ à tous
 

Pièces jointes

  • Capture.3.png
    Capture.3.png
    6.1 KB · Affichages: 171
  • Capture.3.png
    Capture.3.png
    6.1 KB · Affichages: 156

pierrejean

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour à tous

Juste pour pinailler puisqu'il est question de 2007 et plus (si plus de 65536 prénoms)

Code:
ActiveSheet.Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).RemoveDuplicates Columns:=1, Header:=xlYes
 

DoubleZero

XLDnaute Barbatruc
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Bonjour à toutes et à tous,

@ JCGL :
...XL 2007 ne permet pas la suppression des doublons par la barre d'outils comme sur XL 2010 et XL 2013 ?...

XL 2007 le permet également.

Une double bise :)

@ mimy :
Il ne faut pas avoir peur de l'enregistreur de macro mais le solliciter sans cesse.

Bon courage et à bientôt :)
 

mimy

XLDnaute Occasionnel
Re : Créer une macro pour supprimer les doublons dans une même colonne en VBA

Merci pour vos réponses,

Ci-dessous je supprime ce qui est contenu de la colonne A à la colonne E après avoir repéré les doublons dans la colonne A:

ActiveSheet.Range("A1:E" & Range("E" & Rows.Count).End(xlUp).Row).RemoveDuplicates Columns:=1, Header:=xlYes

Y a t-il un moyen de repérer les doublons dans la colonne A, ensuite séléctionner la ligne entière et la supprimer? sans mettre dans le code la colonne E?

Merci beaucoup encore
 

Discussions similaires

Réponses
2
Affichages
405

Statistiques des forums

Discussions
312 191
Messages
2 086 051
Membres
103 108
dernier inscrit
Captain NRJ