KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment extraire uniquement les nombres d’une chaîne de texte dans Excel ?

AuteurSun Date de modification

Lorsque vous travaillez avec Excel, il est fréquent de rencontrer des cellules où nombres et texte sont mélangés, comme dans « Commande 1234 » ou « Le score est 95,6 ». Extraire uniquement les valeurs numériques de ces chaînes devient alors essentiel pour mener des analyses, effectuer des calculs ou générer des rapports précis. Selon que le nombre figure en début, en fin ou au milieu du texte — ou selon que vous ciblez uniquement les décimales — Excel propose plusieurs méthodes efficaces pour relever ce défi.

Dans ce guide, découvrez différentes méthodes pour extraire des nombres à partir de chaînes de texte dans Excel, adaptées à divers scénarios : extraction de nombres quelle que soit leur position, gestion des nombres décimaux, ou récupération de chiffres situés spécifiquement au début ou à la fin d’une chaîne. Chaque méthode détaille son fonctionnement, sa simplicité d’utilisation et s’accompagne de conseils pratiques pour une mise en œuvre efficace.

Extraire un nombre quelle que soit sa position dans une chaîne de texte

Extraire uniquement les nombres décimaux d’une chaîne de texte

Extraire un nombre situé à la fin de la chaîne de texte

Extraire un nombre situé au début de la chaîne de texte


Extraire un nombre quelle que soit sa position dans une chaîne de texte

Extraire des nombres intégrés n’importe où dans une chaîne de texte est une opération courante, notamment lors du nettoyage de données importées depuis diverses sources ou de la consolidation d’informations issues de plusieurs feuilles. Plusieurs solutions pratiques et efficaces existent pour ce scénario, chacune correspondant à un cas d’usage idéal en fonction de votre version d’Excel et de votre maîtrise des formules ou des compléments.

♦ Extraire un nombre quelle que soit sa position dans une chaîne de texte avec la Remplissage instantané

Le Remplissage instantané est une fonctionnalité rapide et pratique, disponible dès Excel 2013, qui vous permet d’extraire des nombres d’une chaîne de texte à partir d’un exemple que vous fournissez. Sans formule ni macro, elle s’impose comme la solution idéale pour les scénarios simples :

1. Dans une cellule adjacente à votre chaîne de texte, saisissez manuellement le nombre tel que vous souhaitez l’extraire (par exemple, si A2 contient « Commande123A », entrez « 123 » dans B2).

2. Avec la cellule active située sous votre saisie manuelle, appuyez sur Ctrl + E(ou utilisez l’onglet)Données > Remplissage instantané). Excel remplira automatiquement les cellules suivantes en extrayant les nombres à partir d’exemples similaires, en se basant sur votre premier exemple.

Cette méthode est idéale pour les jeux de données ponctuels de petite ou moyenne taille à structure cohérente. Attention : le Remplissage instantané repose sur la reconnaissance de motifs. Si vos données sont très hétérogènes ou présentent un ordre numérique ou textuel variable, les résultats d’extraction risquent de ne pas correspondre à vos attentes. Si le Remplissage instantané ne se déclenche pas automatiquement, assurez-vous qu’il est bien activé via Fichier>Options>Avancé>Remplissage instantané automatique.

♦ Extraire un nombre quelle que soit sa position dans une chaîne de texte avec des formules

L’utilisation de formules constitue une méthode polyvalente pour extraire des nombres à partir de chaînes de texte. Cette approche s’appuie sur des fonctions intégrées ou des fonctions de tableau dynamique et s’avère particulièrement utile lorsque vous avez besoin d’une solution qui s’actualise automatiquement dès que les données sources changent.

Sélectionnez une cellule vide dans laquelle vous souhaitez afficher le nombre extrait, puis saisissez l’une des formules ci-dessous en fonction de votre version d’Excel. Une fois la formule entrée, faites glisser la poignée de recopie vers le bas pour l’appliquer aux autres cellules si nécessaire. Reportez-vous à l’illustration ci-dessous comme référence :

● Toutes les versions d’Excel :

=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")

Cette formule est compatible avec toutes les versions récentes d’Excel et s’impose comme un choix fiable si vous n’utilisez pas Excel 365 ou Excel 2021. Notez toutefois que les formules combinant plusieurs fonctions peuvent ralentir les performances sur de grands jeux de données. Assurez-vous également que les chaînes de texte contiennent au moins un caractère numérique ; à défaut, la formule risque de renvoyer une cellule vide ou une erreur.

● Excel 365 ou Excel 2021 et versions ultérieures :

=TEXTJOIN("", TRUE, IFERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1, ""))

Cette formule exploite les nouvelles fonctions de tableau dynamique, simplifiant considérablement le processus d’extraction pour les utilisateurs d’Office 365 ou d’Excel 2021 et versions ultérieures. Elle gère efficacement aussi bien les combinaisons alphanumériques simples que complexes. Veillez à utiliser la bonne version, sous peine de voir la formule ne pas fonctionner comme prévu.

Conseil : Lorsque vous utilisez des formules avec des nombres mixtes, négatifs ou comportant des symboles spéciaux, vérifiez toujours les résultats extraits pour garantir leur exactitude. Par ailleurs, les formules ne reconnaissent pas forcément les points décimaux par défaut ; si vous devez extraire des nombres décimaux, veuillez consulter la section dédiée ci-dessous. En cas de résultat inattendu ou d’erreur, vérifiez attentivement vos références de cellule et la syntaxe de votre formule.

♦ Extraire un nombre quelle que soit sa position dans une chaîne de texte avec Kutools pour Excel

Kutools pour Excel propose une méthode simple pour extraire des nombres situés à n’importe quelle position dans une chaîne de texte. Particulièrement adaptée aux utilisateurs qui préfèrent une interface interactive plutôt que des formules, ou qui doivent traiter une grande plage de données sans effort manuel, cette solution permet de gagner du temps et simplifie les tâches en éliminant le besoin de mémoriser ou de dépanner des formules complexes.

Kutools pour Excelpropose plus de 300 fonctionnalités avancées pour simplifier les tâches complexes, stimulant ainsi créativité et efficacité.Intégré aux capacités de l’IA, Kutools automatise les tâches avec précision, rendant la gestion des données parfaitement fluide.Informations détaillées sur Kutools pour Excel...         Essai gratuit...
  1. Cliquez sur Kutools > Texte > Extraire le texte, comme illustré ci-dessous.
    Cliquez sur Kutools > Texte > Extraire le texte
  2. Dans la boîte de dialogue Extraire le texte :
    (1.) Sélectionnez la plage de cellules contenant vos chaînes de texte ;
    (2.) Choisissez l’option Extraire les nombres, qui garantit que seules les parties numériques sont extraites ;
    (3.) Si vous souhaitez que les nombres extraits soient mis à jour automatiquement lorsque les données sources changent, cochez Insérer en tant que formule (sinon, les résultats seront du texte statique) ;
    (4.) Cliquez sur OK.
    spécifiez les options dans la boîte de dialogue
  3. Lorsque vous y êtes invité, sélectionnez une cellule de sortie dans une zone vide disposant d’un espace suffisant pour accueillir les résultats, afin d’éviter tout écrasement de données existantes.
    sélectionnez une cellule pour placer le résultat
  4. Cliquez sur OK. Les nombres contenus dans chaque cellule sélectionnée seront extraits instantanément.
    tous les nombres sont extraits par Kutools

Cette approche est intuitive et minimise les risques d’erreurs de formule ou de références de cellule incorrectes. Notez toutefois que Kutools est un complément non inclus dans l’installation standard d’Excel. Elle convient particulièrement aux opérations en lot ainsi qu’aux utilisateurs souhaitant contourner une syntaxe de fonctions complexe ou le recours au VBA.

Si les nombres ne sont pas extraits comme prévu, vérifiez la présence d’un formatage mixte — tel que des caractères masqués ou des chiffres non standards — dans vos données texte d’origine. Veillez également à toujours conserver une copie de sauvegarde de votre feuille de calcul avant d’appliquer des modifications en masse.

♦ Extraire un nombre quelle que soit sa position dans une chaîne de texte avec du code VBA

Pour les utilisateurs avancés ou dans des cas spécifiques où les formules et les compléments ne suffisent pas, le VBA propose une solution flexible pour extraire des nombres à partir de chaînes de texte dans Excel. Hautement personnalisable, cette méthode s’avère particulièrement efficace pour automatiser des tâches répétitives ou traiter des jeux de données non standards.

  1. Ouvrez l’éditeur VBA en appuyant sur Alt + F11. Dans la fenêtre Microsoft Visual Basic pour Applications, cliquez sur Insertion > Module. Dans la nouvelle fenêtre de module, collez le code suivant :
  2. Code VBA : Extraire uniquement les nombres d’une chaîne de texte :
    Sub ExtrNumbersFromRange()
        Dim xRg As Range
        Dim xDRg As Range
        Dim xRRg As Range
        Dim nCellLength As Integer
        Dim xNumber As Integer
        Dim strNumber As String
        Dim xTitleId As String
        Dim xI As Integer
        xTitleId = "KutoolsforExcel"
        Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8)
        If TypeName(xDRg) = "Nothing" Then Exit Sub
        Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8)
        If TypeName(xRRg) = "Nothing" Then Exit Sub
        xI = 0
        strNumber = ""
      For Each xRg In xDRg
        xI = xI + 1
        nCellLength = Len(xRg)
        For xNumber = 1 To nCellLength
          If IsNumeric(Mid(xRg, xNumber, 1)) Then
            strNumber = strNumber & Mid(xRg, xNumber, 1)
          End If
        Next xNumber
        xRRg.Item(xI) = strNumber
        strNumber = ""
      Next xRg
    End Sub
    
  3. Après avoir inséré le code, appuyez sur F5 ou cliquez sur le bouton Exécuter. Une boîte de dialogue s’affichera alors pour vous demander de sélectionner la plage de chaînes de texte à traiter.
    code VBA pour sélectionner les chaînes de texte
  4. Une fois votre plage sélectionnée, cliquez sur OK. Une deuxième invite s’affichera pour vous demander de spécifier la cellule de départ de la sortie.
    code VBA pour sélectionner une cellule où placer le résultat
  5. Cliquez à nouveau sur OK. Tous les nombres inclus dans la sélection initiale seront extraits et placés dans la zone de sortie que vous avez indiquée.

Les atouts de la méthode VBA résident dans son efficacité à traiter de grands volumes de données et dans sa flexibilité : vous pouvez personnaliser son comportement (par exemple, extraire uniquement le premier nombre, gérer les décimales ou ignorer certains symboles), à condition de maîtriser les bases du VBA. Précautions : les macros VBA ne sont pas annulables et peuvent écraser vos données si la zone de destination choisie chevauche vos données d’origine ; testez-les toujours sur une copie de sauvegarde. Veillez également à ce que les macros soient activées dans Excel.


Extraire uniquement le nombre décimal d’une chaîne de texte

Il arrive que vos chaînes de texte contiennent des nombres avec des virgules décimales (par exemple « poids : 15,25 kg »). Si vous souhaitez extraire précisément ces nombres décimaux – virgule comprise –, les formules standards ne les reconnaissent pas toujours correctement. Les solutions ci-dessous sont spécialement conçues pour gérer ce type de cas.

Les formules suivantes permettent d’extraire efficacement les nombres décimaux contenus dans des chaînes de texte. Saisissez la formule adaptée dans une cellule vide située à côté de vos données, puis étirez-la vers le bas à l’aide de la poignée de recopie pour l’appliquer aux lignes supplémentaires si nécessaire.

● Toutes les versions d’Excel :

=LOOKUP(9.9E+307,--LEFT(MID(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0}, $A2&"1023456789")),999),ROW(INDIRECT("1:999"))))

Cette formule est compatible avec la plupart des versions d’Excel et a été conçue pour identifier les virgules décimales comme faisant partie intégrante du nombre à extraire. Vérifiez attentivement vos données afin de vous assurer qu’elles ne contiennent pas de points superflus. Si les décimales ne sont pas extraites comme prévu, examinez la chaîne d’origine à la recherche de caractères non standards ou de problèmes de formatage.

● Excel 365 :

=REGEXEXTRACT(A2,"[\d.]+")

Avec Excel 365, les tableaux dynamiques traitent et renvoient de manière plus intelligente les nombres décimaux extraits de chaînes de texte complexes. Saisissez la formule dans la cellule cible, appuyez sur Entrée, puis étirez-la vers le bas si nécessaire.

Conseil : si vous obtenez systématiquement des zéros ou des erreurs au lieu de nombres, vérifiez que vos données contiennent bien des nombres décimaux valides et que les références de cellules sont exactes. Si vos nombres peuvent être à la fois négatifs et décimaux, vos formules pourraient nécessiter quelques ajustements.


Extraire un nombre situé à la fin de la chaîne de texte

Lorsque des nombres apparaissent systématiquement à la fin de vos chaînes de texte — comme dans « 221_IDProduit_446 » ou « 923Ticket#2021 » — vous souhaitez probablement en extraire uniquement la partie numérique finale (« 446 » ou « 2021 »). La formule présentée ici est spécialement conçue pour ce cas d’usage : elle garantit que seules les séquences numériques situées en fin de chaîne soient récupérées.

Copiez-collez la formule suivante dans une cellule vide. Pour les anciennes versions d’Excel, validez-la avec Ctrl + Maj + Entrée afin de créer une formule matricielle. Pour les versions récentes d’Excel dotées des tableaux dynamiques, il suffit d’appuyer sur Entrée :

=RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)))

Faites glisser la poignée de recopie vers le bas pour appliquer cette formule aux autres lignes. Cette méthode est particulièrement adaptée aux formats cohérents où seul le dernier nombre de chaque chaîne est nécessaire, en ignorant ceux situés au début ou au milieu.

Remarque : si vos données mélangent des espaces, des symboles spéciaux ou présentent des variations de position, adaptez la formule ou utilisez une méthode plus générale comme décrit précédemment. Vérifiez toujours que le résultat correspond à vos attentes, notamment si votre Le texte se termine par contient des caractères non numériques qui ressemblent à des chiffres.


Extraire un nombre situé au début de la chaîne de texte

Si vous souhaitez extraire uniquement les nombres situés au tout début de vos chaînes de texte, une formule dédiée vous permet d’isoler cette partie avec précision.

Placez la formule dans une cellule cible vide, et pour les anciennes versions d’Excel, utilisez Ctrl + Maj + Entréepour créer une formule matricielle (dans Excel 365/2021, il suffit d’appuyer sur)Entrée) :

=LEFT(A2, MATCH(FALSE, ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2)+1)), 1) *1), 0) -1)

Ensuite, faites glisser la formule vers le bas pour l’appliquer à toutes les lignes nécessitant une extraction. Cette méthode ne conserve que les chiffres situés au début de la chaîne : même si d’autres nombres apparaissent ailleurs, seule la partie numérique initiale est extraite.

Conseil : si le premier caractère de votre chaîne n’est pas numérique, cette formule peut renvoyer une cellule vide ou une erreur. Vérifiez et nettoyez vos données sources si nécessaire pour des résultats optimaux.

L’extraction de nombres à partir de chaînes de texte est une opération courante, voire indispensable, lors de la préparation des données dans Excel. La méthode idéale dépend de la structure de vos données, de votre version d’Excel ainsi que de votre niveau de confort avec les formules ou les compléments. Si aucun des cas présentés ci-dessus ne correspond à votre situation, envisagez de combiner plusieurs approches ou d’explorer des compléments spécialisés pour répondre à des besoins plus avancés. Vérifiez toujours la cohérence de vos résultats extraits, conservez des copies de sauvegarde et testez d’abord vos formules sur des échantillons réduits afin d’éviter les erreurs fréquentes.


Articles associés :

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance floue....
Liste déroulante avancée:Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple....
Gestionnaire de colonnes:Ajouter un nombre précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels