Comprendre la fonction STXT Excel
La fonction STXT (ou MID pour "Middle" en anglais) est une fonction de texte dans Excel qui permet d'extraire une partie d'une chaîne de caractères. Elle prend trois arguments :
- texte : La chaîne de texte dont vous souhaitez extraire une partie.
- no_départ : La position du premier caractère que vous souhaitez extraire. Le premier caractère de la chaîne est à la position 1.
- no_car : Le nombre de caractères à extraire.
La syntaxe de la fonction STXT est donc la suivante :
=STXT(texte; no_départ; no_car)
Pourquoi utiliser la fonction STXT ?
La fonction STXT est extrêmement utile dans de nombreux cas de figure :
- Extraction de données spécifiques : Par exemple, extraire le code postal d'une adresse complète.
- Nettoyage de données : Supprimer des caractères indésirables au début ou à la fin d'une chaîne de texte.
- Manipulation de chaînes de caractères : Combiner la fonction STXT avec d'autres fonctions de texte pour créer des formules plus complexes.
- Normalisation de données : Assurer une cohérence dans le format de vos données.
Exemples pratiques d'utilisation de STXT
Voici quelques exemples concrets pour illustrer l'utilisation de la fonction STXT.
Exemple 1 : Extraire un code produit
Supposons que vous ayez une colonne contenant des codes produits au format suivant : "PROD-1234-ABC". Vous souhaitez extraire uniquement la partie numérique du code (1234).
- Votre code produit est en cellule A1.
- La partie numérique commence au 6ème caractère.
- La partie numérique est composée de 4 caractères.
La formule à utiliser est donc :
=STXT(A1; 6; 4)
Explication étape par étape :
A1: Indique la cellule contenant le code produit.6: Indique que l'extraction commence au 6ème caractère.4: Indique que l'on extrait 4 caractères.
Capture d'écran (description textuelle) : Imaginez un tableau Excel. La cellule A1 contient "PROD-1234-ABC". La cellule B1 contient la formule =STXT(A1; 6; 4). La cellule B1 affiche "1234".
Exemple 2 : Extraire le nom de famille d'un nom complet
Supposons que vous ayez une colonne contenant des noms complets au format "Nom Prénom". Vous souhaitez extraire uniquement le nom de famille.
C'est un peu plus complexe car la position du nom de famille varie en fonction de la longueur du prénom. Nous allons utiliser la fonction CHERCHE pour trouver la position de l'espace, puis utiliser cette information dans la fonction STXT.
- Votre nom complet est en cellule A1.
- Nous devons trouver la position de l'espace.
- Le nom de famille commence après l'espace.
La formule à utiliser est :
=STXT(A1; CHERCHE(" ";A1)+1; NBCAR(A1))
Explication étape par étape :
A1: Indique la cellule contenant le nom complet.CHERCHE(" ";A1): Recherche la position de l'espace dans la cellule A1.+1: Ajoute 1 à la position de l'espace pour commencer l'extraction après l'espace.NBCAR(A1): Calcule le nombre total de caractères dans la cellule A1. On extrait tout le reste de la chaîne, à partir de l'espace.
Capture d'écran (description textuelle) : Imaginez un tableau Excel. La cellule A1 contient "Dupont Jean". La cellule B1 contient la formule =STXT(A1; CHERCHE(" ";A1)+1; NBCAR(A1)). La cellule B1 affiche "Jean". (Note : cette formule extrait le prénom, pas le nom de famille. Pour extraire le nom de famille, il faudrait adapter la formule en utilisant GAUCHE et en soustrayant la position de l'espace).
Pour extraire le nom de famille, on peut utiliser cette formule plus complexe :
=GAUCHE(A1;CHERCHE(" ";A1)-1)
Explication étape par étape :
GAUCHE(A1;...): Extrait les caractères à gauche de la cellule A1CHERCHE(" ";A1)-1: Calcule la position de l'espace et soustrait 1 pour obtenir le nombre de caractères du nom de famille.
Capture d'écran (description textuelle) : Imaginez un tableau Excel. La cellule A1 contient "Dupont Jean". La cellule B1 contient la formule =GAUCHE(A1;CHERCHE(" ";A1)-1). La cellule B1 affiche "Dupont".
Exemple 3 : Extraire les 3 premiers caractères
Pour extraire les 3 premiers caractères d'une cellule, vous pouvez utiliser la fonction STXT ainsi :
=STXT(A1; 1; 3)
Explication étape par étape :
A1: Indique la cellule contenant le texte.1: Indique que l'extraction commence au premier caractère.3: Indique que l'on extrait 3 caractères.
Exemple 4 : Extraire les 5 derniers caractères
Pour extraire les 5 derniers caractères d'une cellule, vous pouvez combiner STXT avec NBCAR (nombre de caractères) :
=STXT(A1; NBCAR(A1)-4; 5)
Explication étape par étape :
A1: Indique la cellule contenant le texte.NBCAR(A1): Calcule le nombre total de caractères dans la cellule A1.-4: Soustrait 4 au nombre total de caractères pour déterminer la position de départ (5 caractères avant la fin).5: Indique que l'on extrait 5 caractères.
STXT et autres fonctions Excel : Un mariage parfait
La puissance de STXT réside aussi dans sa capacité à être combinée avec d'autres fonctions Excel pour réaliser des opérations plus complexes. Voici quelques exemples :
- CONCATENER : Pour assembler des portions de texte extraites avec STXT.
- CHERCHE / TROUVE : Pour déterminer dynamiquement la position de départ de l'extraction.
- NBCAR : Pour calculer la longueur d'une chaîne de texte et adapter l'extraction.
- SI : Pour effectuer des extractions conditionnelles en fonction de certains critères.
- MAJUSCULE / MINUSCULE : Transformer le texte extrait en majuscules ou minuscules.
- SUBSTITUE : Remplacer une partie du texte extrait.
Erreurs courantes et comment les éviter
Voici quelques erreurs courantes lors de l'utilisation de la fonction STXT et comment les éviter :
- Erreur #VALEUR! : Cette erreur se produit si
no_départest supérieur à la longueur de la chaîne de texte ou sino_carest négatif. Assurez-vous queno_départetno_carsont valides. - Résultat incorrect : Vérifiez attentivement les valeurs de
no_départetno_car. Une erreur d'un seul caractère peut fausser le résultat. - Oublier de prendre en compte les espaces : Les espaces sont considérés comme des caractères. N'oubliez pas de les prendre en compte lors du calcul de
no_départ. - Utiliser STXT alors qu'une autre fonction est plus appropriée : Pour extraire le début ou la fin d'une chaîne de texte, les fonctions
GAUCHEetDROITEsont souvent plus simples et plus efficaces.
Astuces pour optimiser l'utilisation de STXT
- Utiliser des références de cellules : Au lieu d'entrer directement les valeurs de
no_départetno_cardans la formule, utilisez des références de cellules. Cela vous permettra de modifier facilement les paramètres d'extraction sans avoir à modifier la formule elle-même. - Créer des colonnes intermédiaires : Pour les extractions complexes, il peut être utile de créer des colonnes intermédiaires pour stocker les résultats intermédiaires. Cela rend la formule plus lisible et plus facile à déboguer.
- Documenter vos formules : Ajoutez des commentaires à vos formules pour expliquer ce qu'elles font. Cela vous aidera à vous y retrouver plus tard et à les partager avec d'autres utilisateurs.
STXT vs. GAUCHE vs. DROITE : Quelle fonction choisir ?
Excel propose trois fonctions pour extraire du texte : STXT, GAUCHE et DROITE. Voici un tableau comparatif pour vous aider à choisir la fonction la plus appropriée :
| Fonction | Description | Arguments | Utilité |
|---|---|---|---|
| STXT | Extrait une partie d'une chaîne de texte à partir d'une position donnée. | texte, no_départ, no_car |
Extraire une portion de texte au milieu d'une chaîne, extraire des données spécifiques (codes, numéros, etc.). |
| GAUCHE | Extrait un certain nombre de caractères à partir du début d'une chaîne de texte. | texte, no_car (facultatif) |
Extraire les premiers caractères d'une chaîne (préfixes, codes de pays, etc.). |
| DROITE | Extrait un certain nombre de caractères à partir de la fin d'une chaîne de texte. | texte, no_car (facultatif) |
Extraire les derniers caractères d'une chaîne (extensions de fichiers, codes postaux, etc.). |
En résumé :
- Utilisez
GAUCHEpour extraire le début d'une chaîne. - Utilisez
DROITEpour extraire la fin d'une chaîne. - Utilisez
STXTpour extraire une portion au milieu ou lorsque la position de départ est variable.
Conclusion
La fonction STXT est un outil puissant et polyvalent pour manipuler des chaînes de texte dans Excel. En maîtrisant ses subtilités et en la combinant avec d'autres fonctions, vous pourrez automatiser de nombreuses tâches et gagner un temps précieux. N'hésitez pas à expérimenter avec les exemples fournis dans cet article et à explorer les nombreuses possibilités qu'offre STXT. Alors, prêt à devenir un expert de l'extraction de texte dans Excel ? N'oubliez pas d'enregistrer cet article dans vos favoris pour y revenir en cas de besoin !