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 :

Filtrage spécifique doublons [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club Avatar de dianophe
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 7
    Par défaut Filtrage spécifique doublons
    Bonjour,

    J'ai importé un fichier XML avec des données.

    Mon patron m'as donc demandé de faire un filtre de doublons :

    Nom : 1469517759-capture.png
Affichages : 165
Taille : 6,8 Ko


    Donc mon soucis est de :

    - Comparer les lignes pour trouver les doublons.
    - Si doublon il y a, en garder seulement un comme ceci :

    Nom : 1469517868-capture1.png
Affichages : 155
Taille : 6,3 Ko

    - Ensuite, mettre sur la même ligne le reste, en l’occurrence ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CAMIEG\Commun_comm AND CAMIEG\Responsable_coordination_Antennes OR ...
    Voilà, si vous pouviez m'aider à faire cette macro.

    Merci !

  2. #2
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Bonjour,

    Propose nous un premier bout de code (aide tout de l'enregistreur de macros et de la fonction supprimer les doublons) et on t'aidera à l'optimiser

  3. #3
    Membre du Club Avatar de dianophe
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 7
    Par défaut
    Tout d'abord merci de ta réponse, avec l'enregistreur de macro, cela m'a enregistré ce script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Macro2()
    '
    ' Macro2 Macro
    '
     
    '
        ActiveSheet.Range("Tableau1[#Tout]").RemoveDuplicates Columns:=Array(1, 2, 3), _
            Header:=xlYes
    End Sub
    Mais cela supprime non pas une cellule, mais carrément toute la ligne, or ça n'est pas cela qui est attendu.

  4. #4
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Fais des tests, si tu t'arrêtes à ça c'est comme si l'on faisait tout le travail. Surtout que tu n'as pas dû chercher très loin car on peut supprimer les doublons dans une seule colonne.

  5. #5
    Membre du Club Avatar de dianophe
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 7
    Par défaut
    Ah mais de toute façon c'est normal, on ne peut pas 'supprimer' une seule cellule directement, on peut la vider d'abord.
    Donc j'ai réussis à faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim N As Long, i As Long
        N = Cells(Rows.Count, "A").End(xlUp).Row
        For i = N To 2 Step -1
            If Cells(i, "A").Value = Cells(i - 1, "A").Value Then Cells(i, "A").Clear
        Next i
    Nom : 1469523918-capture2.png
Affichages : 147
Taille : 15,8 Ko

    Sur la colonne A, maintenant sur la b & d, ça sera ensuite bon pour les doublons. Ensuite le reste sur la même ligne :/ Et donc la ça m'embête.
    Est-ce qu'il faudrait que je fasse un test par rapport aux cellules vides ?

  6. #6
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Il y a beaucoup plus simple pour supprimer les doublons dans chaque colonne :

    Ce code supprime tous les doublons des colonnes 1 à 10, colonne par colonne (ne supprime pas la ligne entière)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Sub Macro1()
        Dim i As Long
        For i = 1 To 10
            Columns(i).RemoveDuplicates Columns:=1, Header:=xlNo
        Next i
    End Sub
    Ensuite le reste sur la même ligne :/ Et donc la ça m'embête.
    Est-ce qu'il faudrait que je fasse un test par rapport aux cellules vides ?
    Je n'ai pas bien saisi

  7. #7
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    en réutilisant la boucle de ton dernier message

    lorsque tu clear la cellule en A, alimente une variable string avec la valeur des deux colonnes au fur et à mesure

    et à la fin, sur la ligne que tu conserves, tu écris la valeur de cette variable string

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

Discussions similaires

  1. [AC-2010] Recherches de doublons spécifiques
    Par pierre031 dans le forum Access
    Réponses: 0
    Dernier message: 03/04/2014, 14h55
  2. [IP-2010] Filtrage Doublons dans un menu déroulant
    Par Tybo34 dans le forum InfoPath
    Réponses: 1
    Dernier message: 06/04/2011, 15h45
  3. Récupération doublons spécifique
    Par 'Dol' dans le forum Langage SQL
    Réponses: 1
    Dernier message: 08/09/2010, 17h25
  4. Requête sans doublon spécifique
    Par david71 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 23/01/2008, 18h45
  5. [Pl/Sql] Filtrage de doublon
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 2
    Dernier message: 04/10/2006, 14h41

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