Comment extraire des parties de texte avec les fonctions DROITE() - GAUCHE() - STXT() d'Excel

Aujourd’hui, je vous propose de découvrir comment extraire une partie d’une chaîne de caractères en utilisant les fonctions dédiées d’Excel.

Restez bien jusqu’au bout de cet article, nous y verrons notamment comment exploiter un numéro de sécurité sociale pour déterminer le sexe d’un individu ou encore comment récupérer le code postal ou la ville de résidence à l’intérieur d’une chaîne de caractères complexe.

En bonus, je vais également vous montrer comment extraire un texte jusqu’à l’espace.

 

Téléchargement

Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
 

 

Tutoriel Vidéo

 

1. Présentation

Pour illustrer ce tutoriel, nous allons utiliser le tableau de présentation du personnel d’une entreprise :

Excel formation - fonction droite et gauche - 01

Nous y retrouvons les informations suivantes :

  • Le nom
  • Le prénom
  • L’adresse complète
  • La date de naissance
  • Le numéro de sécurité sociale

 

2. Extraire la partie gauche d’un texte

Pour commencer de manière assez simple la découverte des fonctions d’extraction des sous-chaînes de caractères, nous allons souhaiter obtenir le sexe de chacune des personnes de l’entreprise.

Et pour cela, nous allons pouvoir nous appuyer simplement sur leur numéro de sécurité sociale.

En effet, comme vous le savez certainement, le numéro de sécurité sociale français est composé d’une série de nombres qui correspondent aux informations personnelles :

  • Le premier chiffre correspond au sexe de la personne,
  • Les deux chiffres suivants à son année de naissance,
  • Les deux chiffres suivants à son mois de naissance,
  • Les deux chiffres suivants à son département de naissance,
  • Les trois chiffres suivants au code de sa ville de naissance (le « code commune » officiel de l’INSEE),
  • Les trois chiffres suivants à son numéro d’ordre de naissance dans la commune pour son mois de naissance,
  • En enfin les deux derniers chiffres correspondent à la clé de contrôle

Excel formation - fonction droite et gauche - 02

Ici, ce qui va nous intéresser c’est d’analyser le tout premier caractère, lequel nous informera comme nous venons de le voir sur son sexe.

Pour extraire ce premier caractère, nous allons pouvoir utiliser la fonction GAUCHE(), qui permet comme son nom l’indique d’extraire une série de caractères situés au début d’un texte.

Nous commençons par insérer une nouvelle colonne dans le tableau en saisissant simplement le nom de celle-ci à droite du tableau :

Excel formation - fonction droite et gauche - 03

Nous appelons alors la fonction GAUCHE() pour constater que celle-ci attend deux arguments :

 =GAUCHE(texte;[no_car]) 

Où :

  • Texte : correspond au texte dans lequel nous souhaitons effectuer l’extraction,
  • No_car : correspond au nombre de caractères à extraire. Il s’agit d’un argument facultatif, dont la valeur par défaut est d’un caractère.

Pour récupérer le premier caractère situé à gauche au sein de la cellule Numéro de sécurité sociale, nous saisissons alors la fonction :

 =GAUCHE(E10;1) 

Excel formation - fonction droite et gauche - 04

En outre, étant donné qu’ici nous ne souhaitons extraire qu’un seul caractère, nous pouvons utiliser la valeur par défaut de l’argument no_car, en omettant de saisir la valeur « 1 » :

 =GAUCHE(E10) 

Le résultat sera alors strictement identique :

Excel formation - fonction droite et gauche - 05

Maintenant que nous connaissons le code correspondant, nous allons pouvoir afficher directement le sexe des personnes en utilisant la fonction SI() que nous avons découverte il y a peu de temps, et qui permet d’effectuer un test logique afin de retourner une valeur donnée si le test renvoie la valeur VRAI, ou une autre valeur si celui-ci renvoie FAUX.

Ici nous allons donc regarder si le code est égal à « 1 », ce qui signifiera alors que la personne est un homme. Il s’agira d’une femme dans le cas contraire :

 =SI(GAUCHE(E10)="1";"Homme";"Femme")  

Attention, dans ce cas-là, le résultat retourné l’est sous la forme d’un texte, il faut donc saisir le nombre « 1 » entre guillemets.

Excel formation - fonction droite et gauche - 06

Maintenant, nous pouvons étendre la formule sur toutes les cellules de la colonne en double cliquant sur la poignée de recopie (le petit carré noir situé en bas à droite de la cellule) :

Excel formation - fonction droite et gauche - 07

 

3. Extraire la partie droite d’un texte

Maintenant que nous avons comment extraire la partie d’un gauche d’un texte en utilisant la fonction GAUCHE(), voyons comment extraire la partie située sur la droite en utilisant la fonction… DROITE() !

Celle-ci fonctionne exactement de la même manière :

 =DROITE(texte;no_car) 

Où :

  • Texte : correspond au texte dans lequel nous souhaitons effectuer l’extraction,
  • No_car : correspond au nombre de caractères à extraire. Il s’agit d’un argument facultatif, dont la valeur par défaut est d’un caractère.

Ici, nous allons souhaiter récupérer le code postal de résidence des personnes, en utilisant la colonne « Adresse » :

Excel formation - fonction droite et gauche - 08

Comme vous pouvez le constater, celui-ci se trouve tout à droite des cellules, sur cinq caractères :

 =DROITE(C10;5) 

Excel formation - fonction droite et gauche - 09

Alors attention, dans les exemples que nous venons de voir, l’extraction des données est simple car nous connaissons déjà le nombre de caractères à extraire.

Bien entendu, cela ne sera pas toujours le cas.

En effet, maintenant, imaginons que nous souhaitions extraire la ville et le code postal.

Pour cela, nous allons devoir identifier un caractère donné, dont nous allons compter la position avec la fonction TROUVE().

Ici, nous allons pouvoir nous servir du tiret central :

 =TROUVE("-";C10) 

Excel formation - fonction droite et gauche - 10

Cette formule nous permet ici d’obtenir la position du tiret, or ce que nous souhaitons déterminer, c’est le nombre de caractères situés à droite de celui-ci. Pour cela, nous allons simplement effectuer une soustraction du nombre de caractères total, diminués de cette position :

 =NBCAR(C10)-TROUVE("-";C10)-1 

Nous n’oublions pas de retirer un caractère afin de ne pas considérer l’espace situé juste après le tiret :

Excel formation - fonction droite et gauche - 11

Nous souhaitons donc extraire les 13 derniers caractères de la cellule.

Il ne reste plus qu’à encapsuler ce résultat en tant qu’argument de la fonction DROITE() :

 =DROITE(C10;NBCAR(C10)-TROUVE("-";C10)-1)  

Excel formation - fonction droite et gauche - 12

 

4. Extraire une partie située au centre d’un texte

Pour récupérer une partie qui ne se trouve pas directement sur la gauche ou sur la droite d’un texte, nous avons deux possibilités à notre disposition.

Nous pouvons tout d’abord encapsuler la fonction GAUCHE() en tant qu’argument de la fonction DROITE() (ou inversement).

Si nous reprenons le dernier exemple, nous avons pu récupérer la partie droite de l’adresse avec la fonction DROITE().

Si nous utilisons la fonction GAUCHE() sur ce résultat, alors nous récupérerons la ville sans le code postal, comme souhaité :

 =GAUCHE(H10;NBCAR(H10)-6) 

Excel formation - fonction droite et gauche - 13

L’autre solution, si nous souhaitons effectuer l’extraction directement, sans passer par l’utilisation de deux fonctions est d’utiliser l’unique fonction STXT() :

 =STXT(texte;no_départ;no_car) 

Où :

  • Texte : correspond au texte dans lequel nous souhaitons effectuer l’extraction,
  • No_départ : correspond à la position de la première lettre à extraire
  • No_car : correspond au nombre de caractères à extraire

 

 =STXT(C10;TROUVE("-";C10)+2;NBCAR(C10)-TROUVE("-";C10)-1-6)  

Nous nous inspirons ici fortement des formules précédentes :

  • La position du premier caractère à extraire est obtenue en prenant la position du tiret, puis en nous plaçant deux caractères plus loin (pour tenir compte de l’espace)
  • Et le nombre de caractères à extraire correspond au nombre de caractères totaux, duquel nous retirons le nombre de caractères situés à gauche du tiret, moins un caractère encore pour l’espace suivant, et moins six caractères pour le code postal et l’espace situé juste avant

Excel formation - fonction droite et gauche - 14

 

5. Les fonctions GAUCHEB() et DROITEB()

Pour finir, sachez que les fonctions GAUCHE() et DROITE() disposent de variantes, les fonctions GAUCHEB() et DROITEB() qui permettent, dans lesquels nous spécifions la taille des données à extraire non pas en caractère comme nous venons de le voir, mais en octets.

 

 



Articles qui pourraient vous intéresser

Comment calculer le PGCD et le PPCM (« Plus Grand Commun Diviseur » et « Plus Petit Commun Multiple ») sur Excel ?
Comment utiliser la fonction SOMMEPROD d’Excel
Comment nettoyer une chaîne de caractères - Supprimer les espaces indésirables et les caractères illisibles sur Excel ?
Comment compter le nombre de feuilles, de lignes ou de colonnes Excel ?
Comment extraire des parties de texte avec les fonctions DROITE() - GAUCHE() - STXT() d'Excel
Comment effectuer un test sur Excel : la fonction SI() (ainsi que ET() et OU())
Comment convertir des unités de mesure sur Excel ? La fonction CONVERT()
Comment modifier le résultat d’une formule renvoyant une erreur : la fonction SIERREUR() d’Excel ?
Comment obtenir des informations sur le classeur (nom et répertoire d’enregistrement) et sur les cellules (nom de l’onglet,…) sur Excel ?
Comment effectuer un test logique sur Excel : découvrir les fonctions ESTERREUR, ESTERR, ESTNA, ESTREF, ESTNUM, ESTTEXTE, ESTNONTEXTE,…
Comment classer simplement des données avec la fonction RANG (avec ou sans ex æquo) Excel ?
Oubliez RECHERCHEV() ! La fonction INDEX-EQUIV pour réaliser des recherches complexes sur Excel

Contact - Plan du site - À propos - Contact

© Excel-Formation 2018 - Excel, simplement

Haut de la page

Excelformation.fr propose de nombreuses formations pratiques et gratuites sur Microsoft Excel : des cours pour apprendre à structurer et analyser les données, des tutos sur les fonctions avancées, les formules et les formules avancées d'Excel, les formules matricielles, les mise-en-formes conditionnelles, les graphiques Excel (xls, xlsx, xlsm,…). Des tutoriels pour apprendre à automatiser les tâches répétitives (via des macro-commandes en VBA) de vos classeurs Excel.