Formule pour extraire des caractères de plusieurs cellules

Fermé
Lud - 5 oct. 2022 à 10:09
danielc0 Messages postés 1133 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 16 septembre 2024 - 9 oct. 2022 à 12:04

Bonjour à tous !

Jusqu'ici j'avais la formule suivante qui fonctionne

=SUBSTITUE(STXT(_Data[@[GS consommées]];12;10)&STXT(_Data[@[GS consommées]];39;14)&STXT(_Data[@[GP consommées]];4;8)&STXT(_Data[@[CH consommées]];12;13)&STXT(_Data[@[CH consommées]];37;13)&DROITE(_Data[@[GN consommées]];13)&RECHERCHEV(_Data[@[ProductID du MFD]] & _Data[@Machine];AdditionalInfo3;6;FAUX);"IOPZ";"")

Formule qui me renvoie les caractères contenus dans différents onglets/colonnes en ne conservant que certains caractère selon le cas. Puis enfin, suppression des valeurs "IOPZ" s'il y en a.

J'aimerais ajouter un "subsitute"  (sur le même principe du IOPZ retiré des résultats finaux) qui dise de "remplacer par rien", toute chaîne commençant par "CGP" et sur les 11 caractères suivants (il peut y avoir un espace, inclus dans les 11 Caractères).

exemple: si j'avais dans mes résultats qqs chose du type : CGP 1234567

cette valeur serait supprimée du résultat de ma formule

Mais je ne sais pas comment faire un substitue de ce type, qui plus est imbriqué dans la formule de départ.

Par avance merci beaucoup pour votre aide !


Windows / Chrome 106.0.0.0

A voir également:

3 réponses

Willzac Messages postés 266 Date d'inscription mercredi 27 septembre 2017 Statut Membre Dernière intervention 20 juin 2024 14
6 oct. 2022 à 12:28

Bonjour Lud, 

C'est difficile de vous aider sans le fichier d'exemple.

Bien cordialement

Will

0
danielc0 Messages postés 1133 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 16 septembre 2024 130
9 oct. 2022 à 11:18

Bonjour,

Est-ce que tu acceptes une solution avec une fonction VBA ?

Cordialement.

Daniel


0
danielc0 Messages postés 1133 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 16 septembre 2024 130
9 oct. 2022 à 12:04

Re, Au cas où tu aurais un abonnement Microsoft 365  :

=JOINDRE.TEXTE("";;SI(GAUCHE(FRACTIONNER.TEXTE(SUBSTITUE(C5;"CGP";"***CGP");"***");3)="CGP";STXT(FRACTIONNER.TEXTE(SUBSTITUE(C5;"CGP";"***CGP");"***");12;9^9);FRACTIONNER.TEXTE(SUBSTITUE(C5;"CGP";"***CGP");"***")))

Remplace "C5 par le texte à traiter.

Daniel


0