IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Suppression des doublons


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 23
    Par défaut Suppression des doublons
    Bonsoir,

    J'ai voulu créer une petite macro sur excel qui permet de supprimer les doublons sur une colonne (je sais que cette fonction est directement accessible sur excel avec les filtres élaborés).

    Mon code marche pas tout à fait, je pense qu'il y a un pbm de concetpion.

    Par exemple, lorsque j'ai 10 éléments qui se répètent 7 vont être supprimés mais 3 vont rester, et je ne comprend pas pourquoi.

    J'aimerais vraiment pouvoir où je me suis trompé dans l'algorithme,

    Voici mon code :

    Merci à celui qui pourra m'expliquer mon erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Dim i As Integer
    Dim j As Integer
    Dim o As Integer
     
     
    i = 0
    While i < 100
        i = i + 1
        j = i
            While j < 100
            j = j + 1
            If Range("A" & i).Value = Range("A" & j).Value Then Range("A" & j).Delete
            Wend
     
    Wend
     
    For o = Cells(100, 1).End(xlUp).Row To 1 Step -1
    If Cells(o, 1).Value = "" Then Cells(o, 1).EntireRow.Delete
    Next o
     
    End Sub

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    317
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 317
    Par défaut
    Bonsoir, linooo
    sans tester, ceci doit provenir du fait que tu supprimes tes lignes en partant de la 1 ère ligne
    commence ta boucle à 100

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = 100 to 1 step -1
    si doublons à suivre, ta macro saute une ligne

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je pense qu'une petite lecture de cet article tout neuf de Silkyroad devrait t'aider.

    Starec

  4. #4
    Membre averti
    Inscrit en
    Juin 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 23
    Par défaut
    Hello,

    Merci pour vos réponses, ça m'a bien servi !

    Mapeh, ton bout de code était très utile

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim i As Integer
    Dim j As Integer
     
    For i = 30 To 2 Step -1
        j = i - 1
        If Range("A" & i).Value = Range("A" & j).Value Then Range("A" & j).Delete
    Next i
     
    End Sub

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re

    Si les réponses te conviennent, il faudrait cliquer sur

    Starec

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/07/2009, 10h06
  2. suppression des doublons
    Par sucreMan dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 03/10/2007, 12h12
  3. [SQL] Suppression des doublons d'un champs SQL
    Par fabien14 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 21/05/2007, 14h28
  4. problème avec la suppression des doublons dans arraylsit
    Par ulysse031 dans le forum Langage
    Réponses: 13
    Dernier message: 04/03/2007, 12h52
  5. suppression des doublons
    Par LuckySoft dans le forum Requêtes
    Réponses: 9
    Dernier message: 04/08/2006, 12h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo