Comment extraire uniquement les nombres d’une chaîne de texte dans Excel ?
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.
- Cliquez sur Kutools > Texte > Extraire le texte, comme illustré ci-dessous.

- 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.
- 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.

- Cliquez sur OK. Les nombres contenus dans chaque cellule sélectionnée seront extraits instantanément.

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.
- 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 :
- 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 - 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.

- 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.

- 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
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.
- 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





