Supprimer une ligne si doublon dans un champ
Résolu
siamens_duj
-
Frenchie83 Messages postés 2254 Statut Membre -
Frenchie83 Messages postés 2254 Statut Membre -
Bonjour,
J'ai un tableau avec pas mal de données et tout les jours j'importe d'autres données.
J'aimerais que, quand il y a un doublon, mon code efface toute la ligne où il y a le champ qui comporte le doublon.
Actuellement mon code efface juste la cellule où il y a le doublon.
J'ai également essayé de mettre :
Mais cela efface toutes les données qu'il y a dans le tableau.
Quelqu'un saurez comment effacer la ligne où la cellule comporte un doublon.
J'ai un tableau avec pas mal de données et tout les jours j'importe d'autres données.
J'aimerais que, quand il y a un doublon, mon code efface toute la ligne où il y a le champ qui comporte le doublon.
Actuellement mon code efface juste la cellule où il y a le doublon.
Sub SupDoublonsColonne()
Set d = CreateObject("Scripting.Dictionary")
Set début = Cells(5, 4) 'C'est dans la colonne D qu'on recherche un doublon
a = Range(début, début.End(xlDown))
For Each c In a
d(c) = ""
Next c
Range(début, début.End(xlDown)).ClearContents début.Resize(d.Count, 1) = Application.Transpose(d.keys)
End Sub
J'ai également essayé de mettre :
Range(début, début.End(xlDown)).ClearContents.EntireRow
Mais cela efface toutes les données qu'il y a dans le tableau.
Quelqu'un saurez comment effacer la ligne où la cellule comporte un doublon.
A voir également:
- Supprimer doublon vba
- Supprimer rond bleu whatsapp - Guide
- Supprimer page word - Guide
- Supprimer pub youtube - Accueil - Streaming
- Fichier impossible à supprimer - Guide
- Supprimer doublon excel - Guide
1 réponse
Bonjour
Ceci efface la ligne en doublon (mais ne la supprime pas)
Cdlt
Ceci efface la ligne en doublon (mais ne la supprime pas)
Sub SupDoublonsColonne() Set D = CreateObject("Scripting.Dictionary") Set début = Cells(5, 4) For Each c In Range(début, début.End(xlDown)) If Not D.exists(c.Text) Then D(c.Text) = "" Else Range(Cells(c.Row, 1), Cells(c.Row, 16000)).EntireRow.ClearContents Next c End Sub
Cdlt
Comment ça efface mais ne supprime pas ?
Je ne comprends pas vraiment la différence.
Merci
La suppression, comme son nom l'indique supprime la ligne en doublon, ce qui fait remonter les lignes situées en dessous. ainsi, vous n'aurez pas de lignes vides .
Faites la même chose, et finissez par un filtrage des cellules "non vides"
Cdlt