Supprimer doublons dans une colonne

Bonjour à vous,

Je travaille dans un grand tableur excel (+50000lignes) où j'aimerais supprimer les doublons d'une colonne.

Mais en utilisant l'outil supprimer les doublons dans données cela supprime la ligne et non la cellule et ça enlève également le premier terme doublé.

En fait je souhaiterais que toutes les cellules soient maintenues (non supprimées) mais que les cellules doublées soient vidées à l'exception du premier terme.

Par exemple : on a 5x le code 123123 sur 5 lignes en colonne A, je souhaite que les 5 lignes soient conservées et que les 4 derniers 123123 soient retirées des cellules. Il ne reste qu'un 123123 et les 5 lignes initiales.

123123 ... ... devient 123123 ... ...

123123 ... ... devient / ... ...

123123 ... ... devient / ... ...

123123 ... ... devient / ... ...

123123 ... ... devient / ... ...

J'ai un autre code pour déplacer des éléments de tableur d'autres colonnes et supprimer des lignes : que je saurai manipuler par la suite !

Si vous avec une petite macro ou une manip particulière pour gérer ça je vous serai très reconnaissant !

merci encore

Salut,

Tu peux essayer cela (en considérant que les données sont en colonne A)

Sub SupprDoublons
Dim LastLigne%
LastLigne = Range("A1").End(xlDown).Row
For i = 1 To LastLigne
    For j = i + 1 To LastLigne
        If Cells(j, 1).Value = Cells(i, 1).Value Then Cells(j, 1).Value = ""
    Next j
Next i
End Sub

A+

Jers

Bonjour à tous

Une autre proposition à tester.

Bye !

18classeur1-v1.xlsm (18.03 Ko)

Bonjour à vous,

Jers19, je pense que tu as la bonne idée pour le code, mais cela ne fait rien dans le tableur.. Je suis plutôt débutant en VBA je ne saurai pas te dire ce qui a pu clocher..

gmb, ton code marche mais s'arrête vers la 100e ligne et après j'ai ce message d'erreur :

Range("A1").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo : ne peut pas se resize (1004). Je pense que cela peut-être lié à la taille du tableur (plusieurs milliers de lignes) ?

Merci pour vos retours rapides en tout cas

Peux-tu joindre ton fichier que je regarde ça de plus près ?

S'il est trop gros passe par www.cjoint.com. Tu obtiendras un lien qu'il te suffira de copier et coller dans ton message.

Bye !

gmb,

J'ai mis les 10 000 premières cellules pour pas alourdir le document.

Tu verras que certaines cellules sont déjà vidées, c'est la data telle que j'ai pu la récupérer.

Merci pour ta contribution !

Bonjour

A mon avis ce n'est pas une bonne idée car ton tableau va devenir intriable, infiltrable et inutilisable pour une analyse par TCD par exemple.

Il est dans ce cas plus judicieux d'utiliser une mise ne forme conditionnelle qui masque le répétition de terme dans la colonne...

Bonjour 78Chris,

Si si j'ai des macro pour fusionner des contenus ensuite. Aux cellules vidées, je vais pouvoir rattacher le contenu d'autres colonnes entre elles. En fait je ne cherche qu'à avoir une seule fois l'information de la première colonne.

Effectivement ton tableau est très gros et le PC sur lequel on travaille peut arriver à manquer de mémoire vive pour les variables "tablo" et dico.

Mais au vu de ton fichier, on peut essayer de s'affranchir du problème si on ne fait porter la macro que sur les 2 premières colonnes, comme sur la pièce jointe.

Une remarque tout de même : Excel est fait me semble-t-il pour ne contenir qu'um maximum de 255 caractères par cellule. Or, dans ton tableau, beaucoup de cellules de la colonne 3 en comptent plus de 600 !

Tu risques d'avoir des problèmes...

Bye !

Hello gmb,

J'ai réussi en découpant en petits paquets mon tableur !

Merci pour l'info sur le contenu des cellules trop grandes, je pense effectivement que ça peut poser des problèmes....

En tout cas j'ai réussi à faire ce que je voulais, mes autres macros ont ensuite fonctionné correctement par dessus.

A bientôt

En lisant ton dernier message, je me suis aperçu que ma pièce jointe au dernier des miens n'avait pas suivi.

Le voici . Il devrait t'éviter de saucissonner ton fichier.

Bye !

Rechercher des sujets similaires à "supprimer doublons colonne"