Extraire une partie du texte de la cellule B1

Fermé
IdalTFC - 5 févr. 2018 à 20:23
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 6 févr. 2018 à 08:29
Bonjour,

Il doit sûrement exister une formule pour mon cas car je suis désespérée à faire 1100 lignes; je vous explique;

J'aimerais extraire une partie du texte de la cellule B1 dans la cellule A1 qui contient déjà un mot exemple

A1= valves;
B1= VALVE DE RETENUE VERTICALE 1''...
J'aimerais extraire de la cellule B1 ''RETENUE VERTICALE 1'' ''


Merci


4 réponses

Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
5 févr. 2018 à 20:37
Bonjour.

Ta question laisse à désirer : Je suis certain qu'elle est très incomplète !
En effet si je réponds exactement à ce que tu demandes, la formule est =DROITE(B1;19)
et tu ne manqueras de revenir en disant
"Oui, mais quand c'est une autre phrase, ou quand le nombre de mots change ... ?"
0
Oui exactement le nombre de mots change car j'ai plusieurs sortes de valves ! Puis aussi dans cellule de destination j'ai déjà un mot.
0
Puis la formule STXT semble mieux adapté mais lorsqu'elle extrait mon texte cela remplace le mot qui était déjà dans ma cellule de destination. Existe t'il une formule pour ne pas écraser mon texte contenu dans ma cellule de destination mais plutôt extraire mon texte à la suite de mon texte contenu dans ma cellule de destination.
0
Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
5 févr. 2018 à 22:12
Non.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
5 févr. 2018 à 20:58
Bonjour
si tout vos textes commencent par VALVE DE
=DROITE(A1;NBCAR(A1)-9)

et si vous avez déjà un texte à placer en B1:
="texte en b&"&DROITE(A1;NBCAR(A1)-9)

ou alors utilisez une colonne C
en C1:
=B1&DROITE((A1;NBCAR(A1)-9)

si vous avez d'autres formes de texte, mettez ici une liste d'exemple et revenez coller le lien créé sur le site
http://mon-partage.fr
crdlmnt
0
https://mon-partage.fr/f/zTOzECi4/
0
https://mon-partage.fr/f/pEEf6jDR/
0
Donc dans ma colonne B1122 j'aimerais avoir le texte: BILLE 2" CS 2000WOG et qu'il soit extrait dans la colonne A1122 à la suite de valve;

Merci de votre collaboration !!! :)
0
Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
5 févr. 2018 à 22:09
Non ! non ! non !
Tu ne peux pas avoir dans une même cellule à la fois une donnée et une formule et le résultat de cette formule ... à moins d'écrire une macro en VBA ! Tu es prête pour ça ?
0
Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
5 févr. 2018 à 22:15
Peux-tu envoyer un nouveau fichier dans lequel en A6 tu auras mis autre chose que "valve; " et en C2:C6 les résultats que tu voudrais obtenir en A2:A6 ?
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 6 févr. 2018 à 08:30
Bonjour

ne soyons pas catégoriques à ce point

si on prend vos textes et votre demande au pied de la lettre

une option sans formule si votre liste de code en B est figée

à exécuter bien dans l'ordre spécifié ci dessous

sélectionner la colonne B et touche ctrl + touche h
la fenêtre de remplacement apparaît

1° opération
  • remplacer: entrez le mot VALVE suivi d'un blanc
  • par entrez un point virgule
  • remplacer tout


2° opération
  • remplacer: entrez ;A
  • par; entrez un point virgule
  • remplacez tout


______________________________________________________________________

sinon essayez cette formule qui correspond à ce que vous demandez, mais seulement si le texte initial commence par VALVE
="valve;"&STXT(SUBSTITUE(B2;" A";"");TROUVE("VALVE";B2)+6;80)

(admet 80 caractères pour le texte sorti. Si pas assez modifiez le 80)

ça devrait donner ce que vous attendez en A
si ça ne va pas revenez, mais peut être avec une liste de cas plus fourni

crdlmnt



0