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 :

Macro Excel pour les doublons sur 3 mois glissants


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 6
    Par défaut Macro Excel pour les doublons sur 3 mois glissants
    Bonjour, déjà merci beaucoup pour votre forum complet et très intéressant :

    Je suis tout novice en VBA, et j'ai un fichier à traiter;

    En effet, j'ai une base de données ou je veux identifier mes doublons sur mes adresses mail mais aussi sur le nom et prénom sur 3 mois glissants, et écrire dans une colonne ok si pas de doublons et doublons si doublons.

    Je ne vois absolument pas comment faire?

    Pouvez-vous m'aider svp ?

    Merci d'avance

    P.S : j'ai joint mon fichier en pièce jointe
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Ce lien peut t'aider:
    http://silkyroad.developpez.com/excel/doublons/#LIV-D

    Tu veux que la concaténation de l'adresse mail, nom et prénom soit unique?
    Qu'entends tu par trois mois glissants?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 6
    Par défaut
    Bonjour, merci de votre réponse aussi rapide, je veux identifier les doublons sur les adresses mails, mais aussi identifier les doublons sur le nom et prénom (dans ce cas je peux rajouter une colonne dans mon fichier ou je concatene nom+prenom) en effet une personne peut s'inscrire plusieurs fois avec des mails différents afin de béneficier de la promo c'est pour cela que je ne veux pas qu'un doublon sur les adresses mails, et contrairement au lien que vous m'avez donné, je ne veux pas les compter mais juste rajouter dans une colonne "doublons" si il y a un doublons sinon "ok" s'il n'y en a pas.


    Ce que j'entends par trois mois glissants c'est à dire qu'a chaque mois je veux identifier les doublons sur les trois mois précedents c'est à dire si on est en mars je veux les doublons de janvier à mars, si je suis en juin je regarde à partir d'avril

  4. #4
    Invité
    Invité(e)
    Par défaut
    Il peut y avoir deux personnes différentes avec le même nom et prénom couplé à une adresse mail différente.

    Tu veux ignorer ce cas?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 6
    Par défaut
    Si ce sont deux personnes différentes dans ce cas oui je ne le considere pas comme un doublon.

    Vu qu'en fait c'est pour attribuer des cheques cadeaux a nos panélistes, ils peuvent tres bien s'inscrire sous differentes adresses mails afin de pouvoir bénéficier plusieurs fois des cadeaux.

    Bonjour patricktoulon,

    Absolument pas, comme je l'ai précisé je suis vraiment tout novice sous Excel et encore plus sous VBA Excel, je suis désolé de mon niveau pitoyable

  6. #6
    Invité
    Invité(e)
    Par défaut
    Pour moi deux problèmes se posent avant la réalisation de la macro:

    1 - Comment traiter le cas où deux personnes ont le même nom et le même prénom
    2 - La personne peut mentir sur son nom et son prénom et utiliser une deuxième adresse mail

  7. #7
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    a tu entendu parler de l'object "scripting dictionnary"(dictionnaire qui n'acepte pas les doublons)????
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  8. #8
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    tiens voila une function sur mesure

    cette fonction tri les nom et prenon colonne a et b et les mail en c

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Option Base 1
    'trier les doublons dans une plage de cellules en prenant en compte plusieurs colonnes
     
    Sub test()
    tri_doublon_multicolonne Range("a1:c" & Range("a" & Rows.Count).End(xlUp).Row)
    End Sub
     
     
     
    Public Function tri_doublon_multicolonne(plage As Range)
        Dim dico, tablo, tablosd(), e, textrec As String
        Set dico = CreateObject("Scripting.Dictionary")
         tablo = plage.Value
        plage.Clear
        For i = 1 To UBound(tablo)    'boucle sur toute les ligne du tableau(tablo)
            textrec = ""
            For a = 1 To plage.Columns.Count - 1
            textrec = textrec & tablo(i, a)
            Next
                    If Not dico.Exists(textrec) Then dico(textrec) = i
        Next
        k = dico.keys
        i = dico.items
        For n = 0 To dico.Count - 1
            'MsgBox k(n) & ", " & i(n)
            e = e + 1
            ReDim Preserve tablosd(1 To dico.Count, 3)
            tablosd(e, 1) = tablo(i(n), 1)
            tablosd(e, 2) = tablo(i(n), 2)
            tablosd(e, 3) = tablo(i(n), 3)
        Next
        Cells(plage.Row, plage.Column).Resize(UBound(tablosd), 3) = tablosd
    End Function
    c'est bio la vie pas vrai??
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 6
    Par défaut
    @vcottineau : oui mais ce sont des panélistes qui sont enregistrés dans nos bases donc s'il a menti sur son nom et prénom, il ne sera pas un doublon mais il ne pourra aussi pas bénéficier de son cadeaux vu qu'on lui envoit par voie postale tu me suis?
    Ensuite la personne qui a le meme nom et prénom on va considérer que c'est un doublon.

    @patricktoulon : si j'ai bien compris le peu que j'ai compris, c'est une macro qui va juste trier mes doublons c'est cela? il me faudrait une macro qui identifie les doublons de manière à écrire dans une colonne le texte doublons si doublons et ok si pas de doublons.

    @patricktoulon : la j'ai executer ton code et cela me supprime mes doublons mais je ne veux pas que ca me supprime les champs email et nom + prénom de mes doublons...ou alors c'est moi qui fait encore n'importe quoi et je suis encore plus nul que ce que je pensais

    Mon probleme moi c'est que c'est pour mon chef et il extrait les fichiers par un programme et ca lui sort un format bien défini le mail est en colonne A, le nom colonne B et le prénom colonne C je te joins le fichier pour que tu vois de quoi il a l'air.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [XL-2010] Macro récuperant des données pour les coller sur ppt => pb de maj des données excel
    Par raphdes dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/08/2014, 17h33
  2. [XL-2010] Macro Excel pour se positionner sur une valeur d'une liste déroulante
    Par benadry dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/09/2013, 12h57
  3. Requete pour un résultat sur 12 mois glissants
    Par Franck_P dans le forum Développement
    Réponses: 10
    Dernier message: 17/11/2009, 17h53
  4. Réponses: 5
    Dernier message: 23/05/2006, 14h08
  5. Aide sur les macros Excel pour recopie auto de données
    Par nicoduhavre dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/11/2005, 08h38

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