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 :

Sélection sur première lettre


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 100
    Par défaut Sélection sur première lettre
    Bonjour

    Exemple en colonne G, j'ai (sur 3 lignes différentes) Camille, Charles et Clotilde.

    Pour être clair, ce que je veux c'est quand je saisie "camille" ou "ca" ou "c" dans InputBox je récupère les 3 lignes ou figurent Camille, Charles et Clotilde.

    Le code ci-dessous me renvoi que "camille n'existe pas" ;"ca n'existe pas" ;
    "c n'existe pas"

    Merci à vous
    Lenul

    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
    Sub SelectionN()
     
    Dim SelectionNom
    Dim Colonne As Range
    Dim LastLig As Long
    With Sheets("Prospects")
        SelectionNom = InputBox("Entrez le NOM")
        If SelectionNom <> "" Then
            SelectionNom = Left(SelectionNom, 1)
            LastLig = .Cells(Rows.Count, "G").End(xlUp).Row
            Set Colonne = .Range("G12:G" & LastLig).Find(What:=SelectionNom, LookIn:=xlValues, LookAt:=xlWhole)
            If Colonne Is Nothing Then
                MsgBox "désolé ce NOM n'existe pas"
            Else
                With .Range("G11:G" & LastLig)
                    .AutoFilter
                    .AutoFilter Field:=1, Criteria1:=SelectionNom & "*"
                End With
                OuvrirProspects
                OuvrirExtrait
                Sheets("Extrait").Select
                Range("a11").Select
                .Range("A12:N" & LastLig).SpecialCells(xlCellTypeVisible).Copy Sheets("Extrait").Range("A12")
                .Range("G11:G" & LastLig).AutoFilter
                End If
            Set Colonne = Nothing
        End If
    End With    
    End Sub

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    ajoutes en haut de ton module avant les sub
    et testes
    bonne journée
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut lenul78570 et le forum
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Colonne = .Range("G12:G" & LastLig).Find(What:=SelectionNom, LookIn:=xlValues, LookAt:=xlWhole)
    à remplacer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Colonne = .Range("G12:G" & LastLig).Find(What:=SelectionNom, LookIn:=xlValues, LookAt:=xlPart)
    A+

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 100
    Par défaut
    Merci à vous deux
    Je test et reviens vous dire
    Bonne soirée
    Lenul

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 100
    Par défaut
    Bonjour à Tous

    J'ai testé les deux solutions séparément et ensemble... J'obtiens toujours le même résultat la macro stop sur :
    SelectionNom=Left(SelectionNom, 1)Le message est : projet ou bibliothèque introuvable
    A vous lire
    Lenul

  6. #6
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Avec ton code initial il suffit de changer xlWhole par XlPart dans la recherche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            Set Colonne = .Range("G12:G" & LastLig).Find(What:=SelectionNom, LookIn:=xlValues, LookAt:=xlPart)
    A+

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 100
    Par défaut
    ok je recommence....
    Merci
    Lenul

Discussions similaires

  1. Majuscule sur la première lettre de fichiers automatique
    Par Deciprog dans le forum Windows XP
    Réponses: 5
    Dernier message: 20/08/2008, 11h44
  2. Mettre une majuscule sur la première lettre
    Par AgriPhilou dans le forum Excel
    Réponses: 1
    Dernier message: 23/05/2008, 09h01
  3. [MySQL] Requête de sélection par rapport à la première lettre d'un champ
    Par herve911 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 18/01/2008, 01h31
  4. [MySQL] Trier une table MySQL sur la première lettre
    Par Whombat dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 25/10/2007, 13h45
  5. requête SQL: sélection de la première lettre d'un mot
    Par Claire07 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/07/2006, 11h41

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