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 :

Fonction Find avec doublons


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2007
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 54
    Points : 35
    Points
    35
    Par défaut Fonction Find avec doublons
    Bonjour,

    J'ai une colonne C et je doit comparer chaque cellule de cette colonne à la colonne A, si je trouve un doublon je supprime la cellule active de ma colonne C.Mon probleme est que le code ne reconnait pas les doublons.Auriez vous une idée?.Merci

    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
     
    Worksheets("feuil2").Activate
    'TRI DOUBLONS COLONNE C AVEC A
    Dim rngTrouve As Range
    Dim strChaine As String
    Range("C1").Select
    strChaine = ActiveCell.Value
    Set rngTrouve = ActiveSheet.Columns("A:A").Cells.Find(what:=strChaine)
     
    While ActiveCell.Value <> ""
    If rngTrouve Is Nothing Then
    ActiveCell.Offset(1, 0).Select
    Else
       ActiveCell.Delete
       ActiveCell.Offset(1, 0).Select
    'Cells.Find(what:=strChaine).Activate
    End If
     
    Set rngTrouve = Nothing
    Wend

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Regarde , tu as vraiment tout ce qu'il te faut. Tu as plusieurs méthodes. Y'a juste à adapter.
    Une question tout de même : Tu tiens à "supprimer" la cellule (Delete -> qui fait remonter toutes les cellules du dessous) ou à l'effacer (ClearContents) ?
    A+

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2007
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 54
    Points : 35
    Points
    35
    Par défaut
    Merci pour le lien!, oui effectivement je veux supprimer et faire remonter les cellules c'est juste une liste.
    Par contre j'ai regardé ton lien, et j'ai retrouvé un peu l'idée de mon code, mais je comprends toujours pas pourquoi il n'arrive pas a reconnaitre la donnée que je lui demande demandée tout en sachant qu'il boucle dessus, un truc de fou

  4. #4
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Ola la Cie,
    Une petite variante à tout ce qui a été proposé (à condition qu'on ne doit pas tenir compte de la Case, sinon marche pô)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub test()
    Dim i%, j%
    For i = Range("C65535").End(xlUp).Row To 1 Step -1
        For j = 1 To Range("A65535").End(xlUp).Row
            If Cells(i, 3) = Cells(j, 1) Then
            Cells(i, 3).Delete Shift:=xlUp
            End If
        Next j
    Next i
    End Sub
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Hello fring,
    Juste une remarque : Si tu n'as que 2000 lignes, ok, mais si tu en as 40000, là tu vas voir la différence et termes de temps d'exécution...
    Toujours pour t'embêter, comme d'ab'

  6. #6
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Citation Envoyé par ouskel'n'or Voir le message
    Hello fring,
    Juste une remarque : Si tu n'as que 2000 lignes, ok, mais si tu en as 40000, là tu vas voir la différence et termes de temps d'exécution...
    Toujours pour t'embêter, comme d'ab'
    +1 mais...après avoir testé sur 40000 lignes, ma solution à un avantage, elle m'a permis d'aller boire un café et tailler une bavette avec la réceptionniste en attendant que la procédure soit terminée

    Rectification : j'aurais même eu le temps d'aller tondre son gazon (euh...sans jeu de mot)
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Novembre 2007
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 54
    Points : 35
    Points
    35
    Par défaut
    Bonjour et Merci pour vos solutions, ça fonctionne du feu de dieu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Fonction FIND avec plusieurs valeurs dans une meme cellule.
    Par Manu3100 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 05/07/2015, 18h56
  2. [XL-2003] Fonction Find avec Array
    Par neiluj26 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 19/10/2009, 14h53
  3. Réponses: 4
    Dernier message: 15/06/2009, 15h31
  4. Rechercher une valeur absolue avec fonction Find
    Par Jeanvaljean44 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/09/2008, 08h25
  5. [VBA-E]Problème avec la fonction Find
    Par Mirx1 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 27/04/2006, 18h43

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