Extraire du texte après et avant un caractère dans Excel

Dans Excel, vous pouvez écrire des formules pour extraire du texte après ou avant un caractère spécifique. Et dans ce tutoriel, nous allons apprendre à écrire ces formules.

Extraire le texte après un caractère

Nous devons utiliser TRIM, RIGHT, SUBSTITUTE, REPT et LEN dans cette formule. Et Dans l’exemple ci-dessous, nous avons des valeurs deux mots dans les valeurs et le caractère entre les deux.

extrait-texte-après-et-avant-caractère
=TRIM(RIGHT(SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))),LEN(A1)))
=TRIM(RIGHT(SUBSTITUTE(original_text,character,REPT(" ",LEN(original_text))),LEN(original_text)))

Pour comprendre cette formule, vous devez la diviser en plusieurs parties :

Dans la première partie, nous avons SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))) . Cela fait partie de la formule qui remplace le caractère (,) par le nombre d’espaces équivalent à la longueur du caractère.

formule-à-extraire-texte

Vous pouvez voir que vous avez un espace entre « Excel advisor » au lieu de la virgule.

Dans la deuxième partie, =TRIM(RIGHT("Excel Advisor",LEN(A1))) qui extrait le texte du côté droit du texte, puis le découpe pour supprimer l’espace supplémentaire.

Différentes instances de caractère ?

Lorsque vous travaillez avec des données, vous pouvez avoir plusieurs instances du personnage, et la formule ci-dessus peut ne pas vous aider à gérer cela. Dans ce cas, vous devez utiliser la formule ci-dessous.

extraire-texte-quand-avoir-plusieurs-instances-de-caractères
=IF(LEN(A1)-LEN(SUBSTITUTE(A1,B1,""))<=1,"",MID(SUBSTITUTE(A1,B1,"^^",C1),FIND("^^",SUBSTITUTE(A1,B1,"^^",C1))+2,LEN(A1)))

Avec cette formule, vous devez spécifier le caractère pour extraire le texte, puis l’instance du caractère commence à partir de.

spécifier-le-caractère-pour-extraire-le-texte

La formule ci-dessus est complexe mais fonctionne comme une merveille. Le code de cette formule est la fonction SUBSTITUTE qui vous aide à obtenir le deuxième ou le Nième instant du caractère, puis vous pouvez remplacer cet instant par un « ^^ » qui aide davantage à extraire le texte.

Mais vous pouvez également utiliser la nouvelle fonction TEXTAFTER (OFFICE 365), qui a toutes les options pour obtenir un texte après un caractère sans entrer dans une formule complexe comme ci-dessus.

fonction textafter

Vous devez spécifier le caractère et l’instance dans la fonction.

spécifier-caractère-et-instance

Extraire le texte avant un caractère

Vous pouvez utiliser la formule ci-dessous pour obtenir le texte avant un caractère.

extrait-texte-avant-caractère

C’est la formule exacte que nous avons utilisée pour obtenir le texte après un caractère. Au lieu d’utiliser la DROITE, vous devez utiliser la GAUCHE. Pour obtenir le texte de gauche (avant).

=TRIM(LEFT(SUBSTITUTE(A2,B2,REPT(" ",LEN(A2))),LEN(A2)))

Et cette formule fonctionne exactement comme cette formule. Veuillez vous y référer pour le rendre compréhensible.

Différentes instances de caractère

Il existe deux façons d’obtenir le texte avant (ou après) un caractère.

=IF(LEN(A2)-LEN(SUBSTITUTE(A2,B2,""))<=1,"",LEFT(SUBSTITUTE(A2,B2,"^^",C2),FIND("^^",SUBSTITUTE(A2,B2,"^^",C2))-1))

Il peut être utilisé dans n’importe quelle version d’Excel ; vous pouvez spécifier les caractères et l’instance pour obtenir le texte.

formule-pour-extraire-le-texte-avant-le-caractère

Mais si vous utilisez Excel (Office 365), vous n’avez pas besoin d’utiliser cette formule complexe. Au lieu de cela, vous pouvez utiliser la fonction TEXTBEFORE.

textbefore-fonction

Obtenir le fichier Excel

Télécharger

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *