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 :

Récupérer dernier mot après un délimiteur dans une chaine de caractères


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Récupérer dernier mot après un délimiteur dans une chaine de caractères
    Bonjour à tous !
    Je suis toute nouvelle sur le forum; j'ai quelque bases en VBA, en ayant appris sur le tas, et j'ai besoin de votre aide pour créer la fonction suivante:

    il faudrait qu'à partir d'une chaine de caractères, je puisse récupérer le dernier mot séparé par un délimiteur particulier (par exemple, un tiret -).

    Par exemple, à partir de "bleu-blanc-rouge-vert", récupérer le mot "vert".

    En particulier, les mots de la chaine de caractères n'ont pas tous le même nombre de caractères, et le nombre de mots dans la chaine n'est pas non plus fixe.

    De ce que j'ai lu, "Mid" pourrait m'être utile, mais je ne sais pas comment l'utiliser avec mes contraintes...

    Merci pour votre aide!

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    Salut, voir aide en ligne sur Split et UBound

    Bref qqch comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim sStr As String
    Dim Ar() As String
    Dim Elem As String
     
        sStr = "bleu-blanc-rouge-vert"
        Ar = Split(sStr, "-")
        Elem = Ar(UBound(Ar))
     
        Debug.Print Elem

  3. #3
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour
    Une autre variante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim Mot As String
     
    Mot = "bleu-blanc-rouge-vert"
    Debug.Print Mid(Mot, InStrRev(Mot, "-") + 1)

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    Merci beaucoup! Ca marche nickel

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/12/2013, 17h40
  2. [DOM] Récupérer contenu d'un objet de type org.w3c.dom.Document dans une chaine de caractèr
    Par danyboy85 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 18/01/2007, 11h38
  3. Réponses: 2
    Dernier message: 14/08/2006, 00h56
  4. recherche de mots dans une chaine de caractères
    Par jeanfrancois dans le forum Langage
    Réponses: 5
    Dernier message: 10/02/2006, 11h47
  5. Réponses: 10
    Dernier message: 22/05/2004, 14h51

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