Sélectionner chaine variable

Résolu
Bonjour,

Débutant en VBA, je cherche à sélectionner le texte à l'intérieur d'une cellule, mais la longuerur de cette sélection est variable: elle doit s'arrêter au premier "espace".

Exemple: "eeee aaaa", je veux "eeee"

J'ai tenté: Left(cells(1,1)," ")

Mais ça ne fonctionne pas, et je n'ai rien trouvé sur les divers forum.
Je sais c'est tout bête mais bon, on commence.

Merci d'avance
Configuration: Windows XP Internet Explorer 6.0

3 réponses

  1. Modérateur
    Salut,
    La syntaxe pour "Left" est : Left(chaine de caractère, nombre de caractère).
    Il te faut donc déterminer la place de l'espace dans ta chaine :
    Dans ton exemple : "eeee aaaa"
    Instr(Cells(1,1)," ") 
    te renvoie 5. Formidable non?
    Ne reste plus qu'à "intégrer" ce résultat à "Left" comme ceci :
    Left(Cells(1, 1), Instr(Cells(1,1)," "))

    te renvoie eeee"espace"
    pour n'avoir que les caractères sans l'espace tu peux faire comme ceci :
    Dim a as Integer
    a = Instr(Cells(1,1)," ") - 1
    MsgBox (Left(Cells(1, 1), a)

    1. C'est tout con, et c'est pour ça que c'est génial.

      Merci, et bonne année également.
      1. Modérateur
        Bien, sujet résolu. Mais stp ne tues plus de lapin...