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
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
-
ModérateurSalut,
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)
-
C'est tout con, et c'est pour ça que c'est génial.
Merci, et bonne année également. -
ModérateurBien, sujet résolu. Mais stp ne tues plus de lapin...