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 :

verification de doublons [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut verification de doublons
    Bonjour à tous

    dans un userform, je saisis nom et prénom dans une textbox
    la macro suivante me décompose la saisie en nom (colonne A) et prénom (colonne B).
    En colonne C je souhaite avoir un code de la personne composé des initiales Nom prénom exemple DUBOIS Roger = DR
    mon pb : si il y a DUBOIS Robert j'obtiens également DR donc doublons !
    il faudrait que je rajoute la seconde lettre du prenom pour avoir DRO.
    je n'arrive pas à voir comment vérifier les doublons et incrémenter le code.
    Si quelqu'un a une idée je suis preneur
    bien à vous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    nouvnom = Range("A50").End(xlUp).Row + 1
    Phrase = tbnom.Value
    Nom = Split(Phrase, " ")(0)
    Prenom = Split(Phrase, " ")(1)
         Range("A" & nouvnom) = UCase(Nom)
         Range("b" & nouvnom) = UCase(Prenom)
         Range("c" & nouvnom).FormulaR1C1 = "=CONCATENATE(LEFT(RC[-2],1),LEFT(RC[-1],1))"
         tbcode.Value = Range("C" & nouvnom).Value

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur
    Inscrit en
    Janvier 2010
    Messages
    272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2010
    Messages : 272
    Par défaut
    Bonjour,
    Rajouter une boucle for sur l'ensemble des cellules contenant les initiales déjà existantes et comparer le résultat avec la nouvelle concaténation pourrait faire l'affaire non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For each cel in Range("C1:C" & nouvnom -1)
        if cel.value = Range("c" & nouvnom).value then
            Range("c" & nouvnom).FormulaR1C1 = "=CONCATENATE(LEFT(RC[-2],1),LEFT(RC[-1],2))"
        end if
    next cel

  3. #3
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    J’ai une autre idée
    Eviter de chercher à identifier une personne avec une abréviation du nom et du prénom. Si tu choisis un identifiant unique (matricule par exemple), cela t’évitera d’avoir à résoudre le problème des doublons.

    Cordialement.

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur
    Inscrit en
    Janvier 2010
    Messages
    272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2010
    Messages : 272
    Par défaut
    D'autant plus que ma solution ne te protégera pas des futurs doublons à 3 lettres

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    bonjour Don32 et GFZT82

    la boucle fonctionne bien
    la solution du matricule est bonne également
    en fait le code va servir à remplir un tableau quand worksheet_change, il est plus facile de se souvenir des initiales d'une personne que d'un matricule à mon avis

    merci pour vos toujours précieux conseils

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

Discussions similaires

  1. [AC-2010] Vérification de doublon en cours de saisie
    Par nlbmoi dans le forum VBA Access
    Réponses: 29
    Dernier message: 18/04/2020, 20h13
  2. Verification de doublons sur 2 critères
    Par isabelle b dans le forum VBA Access
    Réponses: 4
    Dernier message: 20/03/2013, 22h21
  3. [AC-2010] erreur code lors d'une verification de doublon
    Par sebing dans le forum VBA Access
    Réponses: 4
    Dernier message: 18/09/2011, 17h23
  4. Verification de doublon avant UPDATE
    Par bmad1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/10/2007, 16h58
  5. verification de doublons dans un tableau
    Par bohemianvirtual dans le forum C
    Réponses: 11
    Dernier message: 25/05/2002, 12h21

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