Extraction d'une chaîne de caractères
m.messaoud29
Messages postés
17
Date d'inscription
Statut
Membre
Dernière intervention
-
tontong Messages postés 2572 Date d'inscription Statut Membre Dernière intervention -
tontong Messages postés 2572 Date d'inscription Statut Membre Dernière intervention -
Bonjour A tous !
Franchement les gars ça fait deux jours que je galère afin de trouver une solution.
Si quelqu'un pouvait m'aider je lui en serais vraiment reconnaissant !
Alors voilà mon problème :
Je cherche à extraire toutes les chaîne de caractère "mo" suivi d'un "chiffre".
J'ai écrit les résultats que je dois obtenir sur le logiciel excel ci-joint.
Je m'explique --->
Voici quelques chaînes de caractères :
1) "sanitaires hommes Co B 3è étage Module 9"
2) "rdc mod 2 SAN H"
3) "niv 2 mo 2 co A"
Moi je veux extraire :
1) Mo 9
2) mo 2
3) mo 2
Je sais qu'il est possible d'extraire en utilisant cette formule : "=STXT(A1;1;TROUVE("Module";A1;1)+7)"
mais je ne parviens paas !
Voici une image excel sur lequel je travail :

Merci d'avance pour toute aide que vous pourrez m'apportez !
A+
Franchement les gars ça fait deux jours que je galère afin de trouver une solution.
Si quelqu'un pouvait m'aider je lui en serais vraiment reconnaissant !
Alors voilà mon problème :
Je cherche à extraire toutes les chaîne de caractère "mo" suivi d'un "chiffre".
J'ai écrit les résultats que je dois obtenir sur le logiciel excel ci-joint.
Je m'explique --->
Voici quelques chaînes de caractères :
1) "sanitaires hommes Co B 3è étage Module 9"
2) "rdc mod 2 SAN H"
3) "niv 2 mo 2 co A"
Moi je veux extraire :
1) Mo 9
2) mo 2
3) mo 2
Je sais qu'il est possible d'extraire en utilisant cette formule : "=STXT(A1;1;TROUVE("Module";A1;1)+7)"
mais je ne parviens paas !
Voici une image excel sur lequel je travail :
Merci d'avance pour toute aide que vous pourrez m'apportez !
A+
A voir également:
- Extraction d'une chaîne de caractères
- Caractères ascii - Guide
- Caractères spéciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
- Plus de chaine tv - Guide
- Chaine radio - Télécharger - Médias et Actualité
4 réponses
Bonjour
voyez ce modèle
https://mon-partage.fr/f/rXW8dTun/
mais il correspond exactement aux exemples que vous donnez,
la formule utilisée impose certains critères:
il n'y a pas de texte mo avant celui concerné
le texte mo ou mod ou modèle est suivi au maximum de deux blanc
le N° de module ne dépasse pas un seul chiffre
si ce n'est pas le cas, on pourra peut être voir autrement ou en deux temps si besoin, et donc revenez avec une liste plus complète de vos cas de figures
l
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
voyez ce modèle
https://mon-partage.fr/f/rXW8dTun/
mais il correspond exactement aux exemples que vous donnez,
la formule utilisée impose certains critères:
il n'y a pas de texte mo avant celui concerné
le texte mo ou mod ou modèle est suivi au maximum de deux blanc
le N° de module ne dépasse pas un seul chiffre
si ce n'est pas le cas, on pourra peut être voir autrement ou en deux temps si besoin, et donc revenez avec une liste plus complète de vos cas de figures
l
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
Bonjour M.messaoud29
Essayer ceci
=SIERREUR("mo "&STXT(A1;CHERCHE("module";A1;1)+7;2);SIERREUR("mo "&STXT(A1;CHERCHE("mod";A1;1)+4;2);"mo "&STXT(A1;CHERCHE("mo";A1;1)+3;2)))
C'est en forgeant que l'on devient forgeron. - C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
Essayer ceci
=SIERREUR("mo "&STXT(A1;CHERCHE("module";A1;1)+7;2);SIERREUR("mo "&STXT(A1;CHERCHE("mod";A1;1)+4;2);"mo "&STXT(A1;CHERCHE("mo";A1;1)+3;2)))
C'est en forgeant que l'on devient forgeron. - C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
Bonjour à tous,
autre possibilité: 1 ou 2 chiffres mais il faut un espace entre le chiffre cherché et le texte qui suit.
="mo "&
SUPPRESPACE(STXT(A2;CHERCHE(" ";A2;CHERCHE("mo";A2;1))+1;2))
autre possibilité: 1 ou 2 chiffres mais il faut un espace entre le chiffre cherché et le texte qui suit.
="mo "&
SUPPRESPACE(STXT(A2;CHERCHE(" ";A2;CHERCHE("mo";A2;1))+1;2))
Bonjour,
J'avais cherché une formule courte mais avec des conditions qui se vérifient.
En effet la formule ne fontionne pas si le texte contient: Mo7 , Mo entre 3A et 3B, Mo 6B, mod 6:, ou, module pair.
En fait elle cherche "mo" puis le premier espace qui suit et renvoie les 2 caractères après cet espace.
Il n'y a pas de miracle, si la base n'est pas rigoureuse la formule se complique et peut devenir irréalisable dans le pire des cas.
J'avais cherché une formule courte mais avec des conditions qui se vérifient.
En effet la formule ne fontionne pas si le texte contient: Mo7 , Mo entre 3A et 3B, Mo 6B, mod 6:, ou, module pair.
En fait elle cherche "mo" puis le premier espace qui suit et renvoie les 2 caractères après cet espace.
Il n'y a pas de miracle, si la base n'est pas rigoureuse la formule se complique et peut devenir irréalisable dans le pire des cas.
Bonjour,
Pour un n° de module de 0 à 999 avec ou sans espace :
Pour un n° de module de 0 à 999 avec ou sans espace :
=SIERREUR("mo " & GAUCHE(STXT(STXT(A1;TROUVE("mo";A1&"mo");99);MIN(TROUVE({1;2;3;4;5;6;7;8;9;0};STXT(A1;TROUVE("mo";A1&"mo");99)&"1234567890";3));3);SOMMEPROD(ESTNUM(STXT(STXT(STXT(A1;TROUVE("mo";A1&"mo");99);MIN(TROUVE({1;2;3;4;5;6;7;8;9;0};STXT(A1;TROUVE("mo";A1&"mo");99)&"1234567890";3));3);LIGNE(DECALER($A$1;0;0;NBCAR(STXT(STXT(A1;TROUVE("mo";A1&"mo");99);MIN(TROUVE({1;2;3;4;5;6;7;8;9;0};STXT(A1;TROUVE("mo";A1&"mo");99)&"1234567890";3));3));1));1)*1)*1));"")
Bonjour m.messaoud29.
Désolé suite à ton MP, je vois qu'il faut employer CHERCHE() à la place de TROUVE()
Plutôt que répondre en MP, il vaut mieux répondre ici.
Pour un texte qui se trouve en colonne C, la formule en D2 est :
Cordialement
Patrice
Désolé suite à ton MP, je vois qu'il faut employer CHERCHE() à la place de TROUVE()
Plutôt que répondre en MP, il vaut mieux répondre ici.
Pour un texte qui se trouve en colonne C, la formule en D2 est :
=SIERREUR("mo " & GAUCHE(STXT(STXT(C2;CHERCHE("mo";C2&"mo");99);MIN(CHERCHE({1;2;3;4;5;6;7;8;9;0};STXT(C2;CHERCHE("mo";C2&"mo");99)&"1234567890";3));3);SOMMEPROD(ESTNUM(STXT(STXT(STXT(C2;CHERCHE("mo";C2&"mo");99);MIN(CHERCHE({1;2;3;4;5;6;7;8;9;0};STXT(C2;CHERCHE("mo";C2&"mo");99)&"1234567890";3));3);LIGNE(DECALER($A$1;0;0;NBCAR(STXT(STXT(C2;CHERCHE("mo";C2&"mo");99);MIN(CHERCHE({1;2;3;4;5;6;7;8;9;0};STXT(C2;CHERCHE("mo";C2&"mo");99)&"1234567890";3));3));1));1)*1)*1));"")
Cordialement
Patrice
Je n'aurait jamais pu trouver cette formule tous seul.
dans mon tableau il apparaît quelques anomalies :
Mo17 RDC Co C #VALEUR!
San H RDC Co B mo9 #VALEUR!
Mais lorsque je rajoute un espace de cette facon entre "mo" et le "chiffre" le problème est réglé :
Mo 17 RDC Co C Mo 17
San H RDC Co B mo 9 Mo 9
Comment pensez vous que je dois réadapter cette formule du coup :
=SI(NB.SI(A20;"*mo*");"Mo";"")&" "&STXT(SUBSTITUE(STXT(A20;CHERCHE("mo";A20;1);20);" ";"///";1);TROUVE("///";SUBSTITUE(STXT(A20;CHERCHE("mo";A20;1);20);" ";"///";1)
Mercii pour votre temps !!!
Cordialement.