Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Fonctions Texte.Avant et Texte.Apres
Avec la série précédente, nous avons découvert comment
découper de maintes façons, les informations des cellules grâce à la
fonction Fractionner.Texte. Ici, nous entamons la découverte conjointe des
deux fonctions Texte.Avant et
Texte.Apres. Ces noms sont très évocateurs. La première permet de retenir ce qui se situe
avant une
occurrence remarquable dans la chaîne tandis que la seconde permet de prélever ce qui est placé
après.
Classeur Excel à télécharger
Nous suggérons d'appuyer cette découverte sur un
classeur Excel existant.

Une liste d'informations est proposée en
colonne B. Chaque terme est séparé d'un autre par un tiret. Sur la droite, une grille d'extraction est en attente, entre les
colonnes D et E. Nous devons y démontrer l'utilité des deux fonctions. Sur la droite encore, deux cases de couleur se suggèrent. Elles doivent agir comme leviers dynamiques en paramètres des fonctions. La première information concerne le
délimiteur à considérer. La seconde définit la
position de ce délimiteur dans la chaîne à tronçonner.
Ces fonctions peuvent accueillir six paramètres, mais seuls les deux premiers sont obligatoires :
=Texte.Avant(texte; délimiteur; [position]; [casse]; [fin_exacte]; [si_pas_trouvé])
Par la mise en pratique dans cette présentation, nous allons découvrir comment utiliser certains de ces paramètres.
Avant et Après le premier
Nous proposons de commencer par l'évidence. Nous n'allons renseigner que les deux premiers paramètres dans un premier temps. Dans ces conditions, en l'absence d'indications contraires, c'est le
premier des délimiteurs qui est utilisé comme repère dans la chaîne.
- Sélectionner la première case de la grille d'extraction en cliquant sur sa cellule D4,
- Taper le symbole égal (=) pour amorcer la formule,
- Inscrire la fonction pour prélever avant, suivie d'une parenthèse, soit : Texte.Avant(,
- Désigner le premier texte à partir duquel prélever, en cliquant sur sa cellule B4,
- Taper un point-virgule (;) pour passer dans l'argument du délimiteur,
- Désigner le tiret en cliquant sur sa cellule G4,
- Figer cette dernière avec la touche F4 du clavier, ce qui donne : $G$4,
En effet, nous allons répliquer cette formule sur les lignes du dessous pour prélever en B5 puis B6 et ainsi de suite mais toujours en considérant le même délimiteur, inexorablement inscrit en cellule G4.
- Fermer la parenthèse de la fonction Texte.Avant,
- Puis, valider la formule par le raccourci clavier CTRL + Entrée,
Ainsi, la cellule du calcul reste active. Comme vous pouvez le voir, c'est l'information placée avant le premier des tirets qui est extraite. En l'occurrence ici, il s'agit de la civilité (Mme) de la première personne.
- Cliquer et glisser la poignée de la cellule D4 jusqu'en cellule D11,

Ce sont bien toutes les civilités respectives qui sont désormais isolées.
Maintenant, en E4, si vous propagez la formule suivante jusqu'en E11 :
=TEXTE.APRES(B4;$G$4), vous obtenez tout ce qui se trouve après le premier tiret, soit toute la chaîne sans la civilité.
Avant et après une certaine position
Ensuite, nous allons voir qu'en actionnant le
troisième paramètre de ces fonctions, il est possible de considérer le délimiteur à un emplacement précis dans la chaîne, pour isoler les portions situées de part et d'autre.
- Avant cela, taper le chiffre 2 en cellule G7,
- Sélectionner les cellules du premier calcul, soit la plage D4:D11,
- Dans la barre de formule, cliquer juste avant la parenthèse fermante,
- Puis, taper un point-virgule (;) pour passer dans l'argument de la position du délimiteur,
- Dès lors, cliquer sur la cellule G7,
- La figer avec la touche F4 du clavier, ce qui donne : $G$7,
- Puis, valider la modification avec le raccourci clavier CTRL + Entrée,
De cette manière, nous propageons l'adaptation sur la hauteur de la plage de cellules présélectionnée. Cette fois, ce sont les données placées
avant le deuxième tiret qui sont extraites. Il s'agit de la civilité et du nom. Si vous réalisez la même adaptation avec la
fonction Texte.Apres sur la
plage de cellules E4:E11, vous obtenez tout ce qui est placé après le deuxième tiret en commençant par le prénom :
=TEXTE.APRES(B4;$G$4;$G$7).

Bien entendu, si vous changez la valeur de la position en cellule G7, les extractions s'actualisent en cohérence.
Exclure une occurrence
Ce délimiteur peut aussi être utilisé à des fins dérivées. Par exemple, en exploitant le délimiteur
Mme, nous pouvons faire disparaître la civilité tout en isolant instantanément les femmes pour exclure les hommes. C'est ce que nous proposons de démontrer.
- En cellule G4, taper le délimiteur Mme,
- En cellule G7, taper le chiffre 1,
Comme vous pouvez le voir, les hommes sont bien exclus mais des surprises surgissent. Lorsque le délimiteur cherché n'est pas présent dans les chaînes, les fonctions répondent par des messages d'erreur (#N/A pour Not Available soit Non disponible). Dans le cas des femmes en revanche, toutes les données placées après la civilité, sont parfaitement extraites en seconde colonne, par la
fonction Texte.Apres.
C'est le sixième et dernier argument de ces deux fonctions qui permet de leur indiquer comment réagir lorsque le délimiteur demandé n'est pas trouvé.
- Sélectionner de nouveau la plage de cellules D4:D11,
- Dans la barre de formule, cliquer juste avant la parenthèse fermante,
- Inscrire trois points-virgules (;;;) pour atteindre le dernier paramètre de la fonction,
- Inscrire deux guillemets ("") pour garder la cellule vide en cas d'erreur,
- Valider l'adaptation par CTRL + Entrée pour la propager sur la plage,
Comme vous pouvez le voir, les erreurs ont disparu de la première colonne.

Maintenant et selon le même protocole, si vous propagez la même adaptation en
colonne E :
=TEXTE.APRES(B4;$G$4;$G$7;;;""), vous remarquez que par ce stratagème, nous avons bien réussi à exclure les hommes pour ne conserver que les femmes à l'extraction.