Posez votre question Signaler

Supprimer les doulons avec excel [Résolu]

Cyril 39 - Dernière réponse le 23 sept. 2009 à 15:36
Bonjour,
Bonjour,
je travaille sur le logiciel excel et je voudrais, à l'aide de la VBA supprimer les doublons d'une liste de noms.
Seulement je voudrais que les noms se retrouvent dans l'ordre alphabétique dans la colonne F et qu'il n'y est pas d'espace entre les différents noms et qu'il n'y est plus de doublons.
Donc j'ai déja paramètré une macro j'aimerais que quelqu'un vérifie les erreurs car j'ai d'autres colonnes avec des noms dans ma base de donné. Lorsque j'essaye la macro celle-ci supprime des noms dans d'autres colonnes voisines, alors qu'elle ne doit pas intervenir sur les autres colonnes. Elle me laisse également des doublons et des espaces dans les autres colonnes.
Je voudrais que la macro trie les noms par ordre alphabéthique, me laisse un seul nom lorsqu'il y a 2 fois le même ou plus et qu'il n'y est pas d'espace entre les cellules avec des noms notés à l'intérieur. Je voudrais que la macro agisse dans la colonne de la cellule F3 à F40.
Voici les paramètres de la macro :
Sub Tridoublon()
Dim MaCell As Range
Dim MaCellSuite As Range
Application.ScreenUpdating = False
Worksheets("feuil2").Range("F3").Sort _
Key1:=Worksheets("Feuil2").Range("F3")
Set MaCell = Worksheets("Feuil2").Range("F3")
Do While Not IsEmpty(MaCell)
Set MaCellSuite = MaCell.Offset(1, 0)
If MaCellSuite.Value = MaCell.Value Then
MaCell.EntireRow.Delete
End If
Set MaCell = MaCellSuite
Loop
Application.ScreenUpdating = True
End Sub
J'espère que l'un de vous poura m'aider...Merci
Lire la suite 
Réponse
+0
moins plus
Salut,
Ton problème est ici :
MaCell.EntireRow.Delete supprime toute la ligne... Donc les cellules contenues dans les colonnes voisines sont supprimées.
Remplace par MaCell.Delete Le souci c'est que tu ne conserves pas de cohérence dans ton tableau.

Tu dis : Lorsque j'essaye la macro celle-ci supprime des noms dans d'autres colonnes voisines, alors qu'elle ne doit pas intervenir sur les autres colonnes. Elle me laisse également des doublons et des espaces dans les autres colonnes. Si tu ne veux pas qu'elle agisse sur les autres colonnes pourquoi se plaindre qu'elle y laisse des espaces et des doublons? Je ne te comprends pas là. Donne davantage d'explication pour que l'on puisse t'aider.
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
Bonjour Cedric, Coucou Pijaku

Pour épurer une liste sur une colonne sans toucher aux autres, tu pourrais utiliser une" collection"
ci joint demo avec explications (tentatives d'...)
http://cjoint.com/?jvm2MoTqrk
pijaku 10867Messages postés jeudi 15 mai 2008Date d'inscription ContributeurStatut 22 mai 2015Dernière intervention - 22 sept. 2009 à 10:05
Salut michel,
Un mot me vient à l'esprit : whaou!! Je ne connaissais pas "collection" et trouve ça super intéressant... Je vais me pencher la dessus. Très beau résultat en tout cas...
Répondre
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
Salut Pijaku

si tu te penches sur "collection", regardes aussi l'objet "dictionary" beaucoup plus rapide mais ch... pour restituer car nécessitant une variable-tablo (array) intermédiaire
Ajouter un commentaire
Réponse
+0
moins plus
Salut michel et pijaku

Merci pour vos réponses, j'ai réussi à paramètrer la macro pour qu'elle supprime les doublons.

cordialement
Ajouter un commentaire
Ce document intitulé «  Supprimer les doulons avec excel  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.