Extraire une chaine de chiffre changeante d'une phrase non changeante.

  • Initiateur de la discussion Initiateur de la discussion MPB
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

MPB

Guest
Bonjour,

Je cherche à extraire une chaine de chiffre (dont la longueur peut varier) d'une phrase, toujours la même.

Ex : Nous avons cueillis XXX cerises.

==> Obtenir le XXX.


Merci d'avance.
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

Bonjour MPB et bienvenue sur le forum

Si ta chaine se trouve en A1 :
Code:
=GAUCHE(DROITE(A1;NBCAR(A1)-TROUVE("cueillis ";A1)-8);NBCAR(DROITE(A1;NBCAR(A1)-TROUVE("cueillis ";A1)-9))-9)*1
A+
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

Merci beaucoup pour vos réponses rapides.

C'est exactement ce que je cherche.

Par contre, se pose à moi un autre problème : Si je veux ajouter par exemple la production de pomme, ça donne :

Nous avons cueillis XXX cerises, XXX pommes.

Le problème c'est que lorsque je met uniquement des pommes ou uniquement des cerises je me retrouve avec un VALEUR! dans la case des pommes. Comment le transformer en 0 ?

Et en fait il y a aussi le problème que si c'est les cerises qui ne sont pas données, les pommes ne s'affichent pas tout court. N'y aurait il pas moyens de prendre "tout ce qu'il y a entre pommes et la virgule avant ?


Merci d'avance.
 
Dernière modification par un modérateur:
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

Bonjour,
Code:
=STXT(A1;EQUIV(0;(ESTERR(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1)*1)*1);0);NBCAR(A1)-SOMME((ESTERR(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1)*1)*1)))*1

à valider par ctrl, maj et entrée

(c’est parce qu’il y a une fôôted’ortograffe, si on cherche "cueilli", on ne trouve pas)
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

re,

Pour les cerises :

Code:
=SI(NB.SI(A1;"*cerises*");STXT($A1;21;TROUVE("cerises";$A1)-22);0)
Pour les pommes :

Code:
=SI(NB.SI(A1;"*pommes*");STXT($A1;36;TROUVE("pommes";$A1)-37);0)
Si pas ça, reviens avec un extrait de ton fichier avec les différents cas possibles.

@+

Edit : bonjour Monique 🙂

@+
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

J'ai un peu du mal^^

Sinon j'ai trouvé un fichier qui fait ce que je cherche, mais je ne parviens pas à l'intégrer à mon propre fichier excel (j'ai l'accord du créateur bien entendu).
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

Voila, en fait je cherche à décomposer les textes en E27 et en E28 Pour les faire rentrer dans les deux tableaux. Le problème c'est que :

1) le nombre de chiffre peut changer.
2) Si il n'y a pas d'un type d'unité, il ne s'affichera pas.


Avez vous une idée ?


Merci d'avance.


P.S : C'est pour moi une occasion d'apprendre à découvrir excel en faisant un truc amusant, donc si vous pouviez m'expliquer comment faire plutôt que de faire vous même et de m'envoyer le truc tout fait, ce serait bien.
 

Pièces jointes

Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

re,

Le problème est loin d'être simple à gérer.

Dans l'hypothèse où tous les types d'unités sont présents, une tentative avec la formule suivante en D8 :

Code:
=(GAUCHE(STXT(SUBSTITUE(SUBSTITUE(GAUCHE($D$27;TROUVE("µ";SUBSTITUE($D$27&",";",";"µ";LIGNES($1:1)))-1);":";",");",";"µ";LIGNES($1:1));TROUVE("µ";SUBSTITUE(SUBSTITUE(GAUCHE($D$27&",";TROUVE("µ";SUBSTITUE($D$27&",";",";"µ";LIGNES($1:1)))-1);":";",");",";"µ";LIGNES($1:1)))+1;99);TROUVE(GAUCHE($C8);STXT(SUBSTITUE(SUBSTITUE(GAUCHE($D$27&",";TROUVE("µ";SUBSTITUE($D$27&",";",";"µ";LIGNES($1:1)))-1);":";",");",";"µ";LIGNES($1:1));TROUVE("µ";SUBSTITUE(SUBSTITUE(GAUCHE($D$27&",";TROUVE("µ";SUBSTITUE($D$27&",";",";"µ";LIGNES($1:1)))-1);":";",");",";"µ";LIGNES($1:1)))+1;99))-1))*1

à recopier vers le bas

Formule brute, non affinée. On doit pouvoir "un peu" raccourcir.

Le principe : chaque type d'unité est séparé par une virgule. Il "suffit" de gérer l'emplacement des virgules : telle donnée se trouve entre la nième virgule et la nième+1 virgule.

Tu nous précises que les types d'unités non présents ne sont pas renseignés. Là, pour le moment, je cale ... je ne vois pas comment traiter.

Je vais quand même consacrer quelques neurones à la question, mais sans garantie.

@+
 
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

Pas grave, merci quand même 🙂

De toute façon j'ai aussi un autre problème, quand je copie/colle le texte, même si j'arrive à sélectionner les nombres, je ne peux pas m'en servir pour des équations, j'obtiens un #VALEUR!.

Quelqu'un saurait il comment faire ?

Merci.


P.S: Je me demandais pour ma question précédente, n'aurait il pas moyen de faire commencer la sélection au début du nom de l'unité, puis de faire tout sélectionner à gauche jusqu'à la virgule suivante ?
 
Dernière modification par un modérateur:
Re : Extraire une chaine de chiffre changeante d'une phrase non changeante.

re,

Le souci, c'est qu'il est difficile d'isoler les unités. Tu as l'unité Soldates, mais ce mot est présent dans bon nombre d'autres unités, donc compliqué à isoler.

Pour le premier point, c'est peut-être l'espace dans les nombres qui gène tes calculs.

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
38
Affichages
1 K
Retour