Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

recuperer une chaine de caractères à gauche d'un caractère spécifique

8 views
Skip to first unread message

Guillaume Parent

unread,
Mar 12, 2001, 2:33:07 PM3/12/01
to
mon pb est tres simple mais je n'ai pas encore trouve de solution.

j'ai une cellule contenant bibi 75.23% fg, je veux extraire 75.23% par une
fonction ou une macro simple.
merci d'avance


Daures L

unread,
Mar 12, 2001, 3:12:28 PM3/12/01
to
=GAUCHE(A1;6)
Cela donne les 6 caractères de gauche du texte en A1
Amicalement
Laurent (de Marseille)
"Guillaume Parent" <guillaum...@internet.lu> a écrit dans le message
news: emlZouyqAHA.1748@tkmsftngp04...

Eric Jeanne

unread,
Mar 12, 2001, 3:11:37 PM3/12/01
to
Guillaume,

C'est quoi la question ? Tu veux récupérer la partie numérique dans la
chaîne ? Ou 6 caratères à partir du sixième ? ou ce ui suit le premier
espace et se termine par % ? Précise la règle, stéplé.

--
Eric Jeanne
Guillaume Parent <guillaum...@internet.lu> a écrit dans le message :
emlZouyqAHA.1748@tkmsftngp04...

Frédéric Sigonneau

unread,
Mar 12, 2001, 4:17:23 PM3/12/01
to
Salut Laurent,

Je crois que tu as oublié bibi, non ?
Une petite fonction VBA :

Function Découpe(s$, posDep%, nbCar%)
Découpe = Mid(s, posDep, nbCar)
End Function

FS

Daures L a écrit :

--
Frédéric Sigonneau [né un Sans-culottide !]
Gestions de temps : http://perso.wanadoo.fr/frederic.sigonneau

Daures L

unread,
Mar 12, 2001, 5:35:18 PM3/12/01
to
effectivement,
pas mal du tout ta fonction, chapeau.
je n'avais pas vu qu'il y avait le mot bibi avant les nombres,
j'aurais fait un coup de gauche droite pas piqué des vers.
=DROITE(GAUCHE(E9;11);6)
Dnas les deux cas, il faut compter le départ et le nombre de caractères non
?
Amicalement,
Laurent (de Marseille)

"Frédéric Sigonneau" <mp...@mp.fe> a écrit dans le message news:
3AAD3CE3...@mp.fe...

jcosta

unread,
Mar 12, 2001, 10:39:26 PM3/12/01
to
au choix

= STXT(A1;5;6) ou DROITE(GAUCHE(A1;10);6)

Jean Pierre Costa

Guillaume Parent <guillaum...@internet.lu> a écrit dans le message :
emlZouyqAHA.1748@tkmsftngp04...

J@C

unread,
Mar 13, 2001, 1:34:07 AM3/13/01
to
pour ne récupérer que la partie numérique (pas sur à 100% que ça marche dans
tous les cas) :
Function numérique(txt)
car = Len(txt)
encore:
car = car - 1
If Asc(Mid(txt, car, 1)) < 65 Then numérique = Mid(txt, car, 1) & numérique
If car > 1 Then GoTo encore
End Function
J@C


"Guillaume Parent" <guillaum...@internet.lu> a écrit dans le message

news: emlZouyqAHA.1748@tkmsftngp04...

GeeDee

unread,
Mar 16, 2001, 2:56:28 PM3/16/01
to Guillaume Parent
Bonsoir,
Guillaume Parent a écrit:

j'ai propose le 28/2/2000 a ALTIMIRV
cette solution qui je pense correspond egalement a ton besoin

Function CalculExp(Expression)
For i = 1 To Len(Expression.Value)
If InStr(1, ",()+*-/^0123456789%.", Mid(Expression, i, 1)) Then sExp =
sExp + Mid(Expression, i, 1)
Next
CalculExp = Evaluate(sExp)
End Function

il est possible selon le separateur decimal utilise
que tu obtiennes la reponse #VALEUR!
dans ce cas utilise prealablement la fonction SUBSTITUE

soit :
A B
C D
bibi 75.23% fg 0,7523 bibi 75.23% fg 0,7523
12mhz 12 12mhz
12
15.5km 15,5 15.5km
15,5
18.45cm 18,45 18.45cm 18,45

12 navets+5poireaux 17 12 navets+5poireaux 17
15,575Kg #VALEUR! 15.575Kg 15,575
15.575kg 15,575 15.575kg 15,575
4^2 16
4^2 16
9^(1/2) 3
9^(1/2) 3

exemple :

9^(1/2) =CalculExp(A11) =SUBSTITUE(A11;",";".")
=CalculExp(C11)

0 new messages