Twitter iPhone pliant OnePlus 12 PS5 Disney+ Orange Livebox Windows 11 ChatGPT

traitement d'une chaine de caractere

13 réponses
Avatar
seb leg
BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.

10 réponses

1 2
Avatar
michel ou sam
Bonjour,
Concernant la structure de cette donnée, est ce toujours la lettre p et
est-ce toujours 3 parenthèses de 2 chiffres qui apparaissent ?

Michel

"seb leg" a écrit dans le message de news:

BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.
Avatar
michel ou sam
re-Bonjour,
avec une donnée en A2, et toujours la lettre p et
toujours 3 parenthèses de 2 chiffres qui apparaissent, j'obtient ceci :

=REMPLACER(REMPLACER(REMPLACER(SUBSTITUE(A2;"p";"");CHERCHE("(";SUBSTITUE(A2;"p";"");1);4;"");CHERCHE("(";REMPLACER(SUBSTITUE(A2;"p";"");CHERCHE("(";SUBSTITUE(A2;"p";"");1);4;"");1);4;"");CHERCHE("(";REMPLACER(REMPLACER(SUBSTITUE(A2;"p";"");CHERCHE("(";SUBSTITUE(A2;"p";"");1);4;"");CHERCHE("(";REMPLACER(SUBSTITUE(A2;"p";"");CHERCHE("(";SUBSTITUE(A2;"p";"");1);4;"");1);4;"");1);4;"")

Michel

"michel ou sam" a écrit dans le message de news:
4e3672e3$0$18819$

Bonjour,
Concernant la structure de cette donnée, est ce toujours la lettre p et
est-ce toujours 3 parenthèses de 2 chiffres qui apparaissent ?

Michel

"seb leg" a écrit dans le message de news:

BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.




Avatar
Jacquouille
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.
Avatar
michel ou sam
Bonjour Jacqouille,
le remplacer (**) ne fonctionne pas chez moi (Excel 2003)
J'ai réussi à réduire un peu la longueur de la formule :
=SUBSTITUE(REMPLACER(REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;"");CHERCHE("(";REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;""));4;"");"p";"")
Michel

"Jacquouille" a écrit dans le message de news:
4e367e22$0$14249$
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.
Avatar
Jacquouille
Salut Michel

je suis vraiment surpris, car, d'habitude, c'est chez moi que quelque chose
ne fonctionne pas.
je viens de refaire le test et ça fonctionne très bien.
plus fort encore.--(*) donne le même résultat que (**), mais pas ().
je travaille aussi avec 2003.
As-tu bien payé toutes tes taxes? Ne serait-ce pas une mesure de rétorsion
de quelque sombre puissance maléfique ?
Laisses-tu bien la case "remplacer par " VIDE ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e368959$0$30793$

Bonjour Jacqouille,
le remplacer (**) ne fonctionne pas chez moi (Excel 2003)
J'ai réussi à réduire un peu la longueur de la formule :
=SUBSTITUE(REMPLACER(REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;"");CHERCHE("(";REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;""));4;"");"p";"")
Michel

"Jacquouille" a écrit dans le message de news:
4e367e22$0$14249$
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.
Avatar
michel ou sam
re-bonjour,
je suis à jour de mes vaccinations ;-)

mon REMPLACER à moi s'écrit :
REMPLACER(ancien_texte;no_départ;no_car;nouveau_texte)
je ne peux donc pas l'utiliser car il a besoin de la position du caractère

J'ai donc utilisé SUBSTITUE
SUBSTITUE(texte;ancien_texte;nouveau_texte;no_position)
mais l'élément de remplacement "*" est considéré comme le texte.
J'ai été voir dans les options d'Excel, je n'ai rien trouvé.

Autrement, j'ai fait une fonction :

Public Function Otertexte(cellule As Range)
Texte = ""
Flag = 0
c = cellule.Value
For i = 1 To Len(c)
If (Mid(c, i, 1)) = "(" Then Flag = 1
If (Mid(c, i, 1)) = ")" Then
Flag = 0
Else
If (Mid(c, i, 1)) > "/" And (Mid(c, i, 1)) < ":" And Flag = 0
Then
Texte = Texte & Mid(c, i, 1)
End If
End If
Next i
Otertexte = Texte
End Function

Michel

"Jacquouille" a écrit dans le message de news:
4e369842$0$5033$
Salut Michel

je suis vraiment surpris, car, d'habitude, c'est chez moi que quelque
chose ne fonctionne pas.
je viens de refaire le test et ça fonctionne très bien.
plus fort encore.--(*) donne le même résultat que (**), mais pas ().
je travaille aussi avec 2003.
As-tu bien payé toutes tes taxes? Ne serait-ce pas une mesure de
rétorsion de quelque sombre puissance maléfique ?
Laisses-tu bien la case "remplacer par " VIDE ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e368959$0$30793$

Bonjour Jacqouille,
le remplacer (**) ne fonctionne pas chez moi (Excel 2003)
J'ai réussi à réduire un peu la longueur de la formule :
=SUBSTITUE(REMPLACER(REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;"");CHERCHE("(";REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;""));4;"");"p";"")
Michel

"Jacquouille" a écrit dans le message de news:
4e367e22$0$14249$
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.



Avatar
Gloops
michel ou sam a écrit, le 01/08/2011 14:57 :
Autrement, j'ai fait une fonction :

Public Function Otertexte(cellule As Range)
Texte = ""
Flag = 0
c = cellule.Value
For i = 1 To Len(c)
If (Mid(c, i, 1)) = "(" Then Flag = 1
If (Mid(c, i, 1)) = ")" Then
Flag = 0
Else
If (Mid(c, i, 1))> "/" And (Mid(c, i, 1))< ":" And Flag = 0
Then
Texte = Texte& Mid(c, i, 1)
End If
End If
Next i
Otertexte = Texte
End Function




Ah, on dirait que tu as envoyé ça pendant que je faisais mes tests :)
Et là l'avantage c'est que c'est déjà la version Excel (est-ce qu'u n
espace n'aurait pas disparu entre "Texte" et "&" ?).

Mais je me trompe ou tu as fait le même oubli que moi, concernant les
lettres ?
Avatar
Gloops
Gloops a écrit, le 01/08/2011 15:59 :
Mais je me trompe ou tu as fait le même oubli que moi, concernant les
lettres ?




Oops, j'ai perdu une occasion de me taire.
Avatar
Jacquouille
Aaaaaah, je comprends.

Mon "Remplacer" provient de :

Barre outils / Edition / Remplacer / Rechercher (*) / Remplacer --> rien /
Remplacer tout / fermer.

Fonctionne aussi sur plusieurs cellules en même temps.....

A la tienne, Etienne. -))
Au demandeur de choisir.
Bonne fin de journée

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e36a2b4$0$30750$


re-bonjour,
je suis à jour de mes vaccinations ;-)

mon REMPLACER à moi s'écrit :
REMPLACER(ancien_texte;no_départ;no_car;nouveau_texte)
je ne peux donc pas l'utiliser car il a besoin de la position du caractère

J'ai donc utilisé SUBSTITUE
SUBSTITUE(texte;ancien_texte;nouveau_texte;no_position)
mais l'élément de remplacement "*" est considéré comme le texte.
J'ai été voir dans les options d'Excel, je n'ai rien trouvé.

Autrement, j'ai fait une fonction :

Public Function Otertexte(cellule As Range)
Texte = ""
Flag = 0
c = cellule.Value
For i = 1 To Len(c)
If (Mid(c, i, 1)) = "(" Then Flag = 1
If (Mid(c, i, 1)) = ")" Then
Flag = 0
Else
If (Mid(c, i, 1)) > "/" And (Mid(c, i, 1)) < ":" And Flag = 0
Then
Texte = Texte & Mid(c, i, 1)
End If
End If
Next i
Otertexte = Texte
End Function

Michel

"Jacquouille" a écrit dans le message de news:
4e369842$0$5033$
Salut Michel

je suis vraiment surpris, car, d'habitude, c'est chez moi que quelque
chose ne fonctionne pas.
je viens de refaire le test et ça fonctionne très bien.
plus fort encore.--(*) donne le même résultat que (**), mais pas ().
je travaille aussi avec 2003.
As-tu bien payé toutes tes taxes? Ne serait-ce pas une mesure de
rétorsion de quelque sombre puissance maléfique ?
Laisses-tu bien la case "remplacer par " VIDE ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e368959$0$30793$

Bonjour Jacqouille,
le remplacer (**) ne fonctionne pas chez moi (Excel 2003)
J'ai réussi à réduire un peu la longueur de la formule :
=SUBSTITUE(REMPLACER(REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;"");CHERCHE("(";REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;""));4;"");"p";"")
Michel

"Jacquouille" a écrit dans le message de news:
4e367e22$0$14249$
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.



Avatar
michel ou sam
Bonjour,
pas bête, c'est vrai qu'on a parfois la tête dans le guidon.

A la tienne aussi (comment sais tu que j'étais en train de fêter
l'anniversaire de ma femme ?)

Michel

"Jacquouille" a écrit dans le message de news:
4e36ddb8$0$5042$
Aaaaaah, je comprends.

Mon "Remplacer" provient de :

Barre outils / Edition / Remplacer / Rechercher (*) / Remplacer --> rien /
Remplacer tout / fermer.

Fonctionne aussi sur plusieurs cellules en même temps.....

A la tienne, Etienne. -))
Au demandeur de choisir.
Bonne fin de journée

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e36a2b4$0$30750$


re-bonjour,
je suis à jour de mes vaccinations ;-)

mon REMPLACER à moi s'écrit :
REMPLACER(ancien_texte;no_départ;no_car;nouveau_texte)
je ne peux donc pas l'utiliser car il a besoin de la position du caractère

J'ai donc utilisé SUBSTITUE
SUBSTITUE(texte;ancien_texte;nouveau_texte;no_position)
mais l'élément de remplacement "*" est considéré comme le texte.
J'ai été voir dans les options d'Excel, je n'ai rien trouvé.

Autrement, j'ai fait une fonction :

Public Function Otertexte(cellule As Range)
Texte = ""
Flag = 0
c = cellule.Value
For i = 1 To Len(c)
If (Mid(c, i, 1)) = "(" Then Flag = 1
If (Mid(c, i, 1)) = ")" Then
Flag = 0
Else
If (Mid(c, i, 1)) > "/" And (Mid(c, i, 1)) < ":" And Flag = 0
Then
Texte = Texte & Mid(c, i, 1)
End If
End If
Next i
Otertexte = Texte
End Function

Michel

"Jacquouille" a écrit dans le message de news:
4e369842$0$5033$
Salut Michel

je suis vraiment surpris, car, d'habitude, c'est chez moi que quelque
chose ne fonctionne pas.
je viens de refaire le test et ça fonctionne très bien.
plus fort encore.--(*) donne le même résultat que (**), mais pas ().
je travaille aussi avec 2003.
As-tu bien payé toutes tes taxes? Ne serait-ce pas une mesure de
rétorsion de quelque sombre puissance maléfique ?
Laisses-tu bien la case "remplacer par " VIDE ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"michel ou sam" a écrit dans le message de groupe de discussion :
4e368959$0$30793$

Bonjour Jacqouille,
le remplacer (**) ne fonctionne pas chez moi (Excel 2003)
J'ai réussi à réduire un peu la longueur de la formule :
=SUBSTITUE(REMPLACER(REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;"");CHERCHE("(";REMPLACER(REMPLACER(A2;CHERCHE("(";A2);4;"");CHERCHE("(";REMPLACER(A2;CHERCHE("(";A2);4;""));4;""));4;"");"p";"")
Michel

"Jacquouille" a écrit dans le message de news:
4e367e22$0$14249$
Bonjour
Je fais simplement deux fois "remplacer" par rien du tout.
1) remplacer p par ---> laisser vide --> Ok
2) remplacer (**) par --> laisser vide --OK

et youplà, on obtient

132713555

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"seb leg" a écrit dans le message de groupe de discussion :


BOnjour,

voici la typologie de la chaine de caracteres :
1p(11)3p2p(09)7p1p3p5p5(10)5p

je cherche une formule ou function qui me donnerai uniquement les
chiffres en excluant les chiffres entre () ce qui devrait me donner en
resultat.
132713555

merci de votre aide.






1 2