Tableaux Excel

Comment extraire les chiffres d’une cellule dans Excel

Extraire uniquement les chiffres d’une cellule contenant du texte et des nombres mélangés est une tâche courante dans le traitement des données. Voici plusieurs méthodes pour y parvenir.


1. Utiliser une formule avec une colonne auxiliaire

Excel ne fournit pas de fonction native spécifique pour extraire uniquement les chiffres, mais vous pouvez combiner plusieurs fonctions pour atteindre cet objectif.

Formule avec des fonctions Excel :

  1. Si vos données se trouvent dans la colonne A (exemple : cellule A1), utilisez cette formule dans une colonne vide (par exemple, B1) : Formule simple : =CONCATENER(SI(ESTNUM(DROITE(A1;1));DROITE(A1;1);"")) Formule avancée avec tableau matriciel : =CONCATENER(SI(ESTNUM(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1));STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1);""))
  2. Appuyez sur Ctrl + Shift + Entrée après avoir saisi la formule pour qu’elle fonctionne comme une formule matricielle.
  3. Étirez la formule vers le bas pour appliquer à toutes les lignes.

Explication :

  • STXT : Extrait un caractère spécifique dans la chaîne.
  • ESTNUM : Vérifie si le caractère est un nombre.
  • NBCAR : Compte le nombre total de caractères.
  • CONCATENER : Assemble les chiffres extraits en une seule chaîne.

2. Utiliser une macro VBA pour extraire les chiffres

Si vous travaillez avec de grandes quantités de données ou si vous avez besoin d’une solution flexible, une macro VBA est idéale.

Code VBA :

Function ExtraireChiffres(Texte As String) As String
    Dim i As Integer
    Dim Resultat As String
    Resultat = ""
    
    For i = 1 To Len(Texte)
        If Mid(Texte, i, 1) Like "[0-9]" Then
            Resultat = Resultat & Mid(Texte, i, 1)
        End If
    Next i
    
    ExtraireChiffres = Resultat
End Function

Étapes :

  1. Appuyez sur Alt + F11 pour ouvrir l’éditeur VBA.
  2. Cliquez sur Insertion > Module.
  3. Collez le code ci-dessus.
  4. Fermez l’éditeur et retournez dans Excel.
  5. Dans une cellule vide, utilisez la fonction personnalisée comme suit : =ExtraireChiffres(A1)

Exemple :

  • Si la cellule A1 contient abc123de4, la formule renverra 1234.

3. Utiliser Power Query pour extraire les chiffres

Power Query est idéal pour le nettoyage de données complexes.

Étapes :

  1. Sélectionnez vos données, allez dans Données > Obtenir et transformer les données > Depuis une table/plage.
  2. Dans l’éditeur Power Query :
    • Ajoutez une colonne personnalisée : Text.Select([Colonne], {"0".."9"})
    • Cela extrait uniquement les chiffres de la chaîne.
  3. Cliquez sur Fermer et charger pour importer les données nettoyées dans Excel.

4. Utiliser un script Python (facultatif)

Si vous travaillez avec des scripts externes ou des outils intégrés comme Python (avec Excel), vous pouvez utiliser une expression régulière pour extraire les chiffres.

Exemple de code Python :

import pandas as pd

# Exemple de données
data = {"Colonne": ["abc123", "456xyz", "78&90"]}
df = pd.DataFrame(data)

# Extraire les chiffres
df["Chiffres"] = df["Colonne"].str.extract("(\d+)", expand=False)
print(df)

5. Utiliser des fonctions combinées pour des cas spécifiques

Exemple : Extraire les nombres séparés

Si les chiffres sont séparés dans la cellule, utilisez TEXTE et EXTRAIRE pour isoler les blocs numériques.

Formule pour extraire un nombre à une position précise :

=SI(ESTNUM(STXT(A1;1;1));STXT(A1;1;1);"")

Cas pratiques

  1. Nettoyer des identifiants :
    • Cellule : ABC1234DEF
    • Résultat : 1234.
  2. Extraire des montants dans des cellules mélangées :
    • Cellule : $123.45ABC
    • Résultat : 12345.
  3. Analyser des données téléphoniques :
    • Cellule : (123) 456-7890
    • Résultat : 1234567890.

Conseils

  • Vérifiez vos données sources : Assurez-vous que les cellules contiennent des caractères valides.
  • Combinez plusieurs méthodes : Par exemple, utilisez Power Query pour des données volumineuses et des formules Excel pour des opérations rapides.
  • Testez les macros VBA sur des copies de vos données pour éviter les erreurs.

Ces méthodes vous permettront d’extraire efficacement les chiffres de vos cellules Excel selon vos besoins.

Suite : Cas pratiques et Méthodes Avancées pour Extraire les Chiffres dans Excel

6. Combiner l’extraction avec d’autres transformations

Dans des cas où vos données nécessitent à la fois une extraction et une transformation (comme reformater les données après extraction), vous pouvez imbriquer les méthodes précédentes avec d’autres fonctions Excel ou Power Query.


Cas pratiques avancés

Cas 1 : Extraire et formater des numéros de téléphone

Les numéros de téléphone peuvent contenir des espaces, des parenthèses ou des tirets. Voici comment extraire les chiffres et reformater le résultat.

Données source :

(123) 456-7890

Formule Excel :

=CONCATENER("(",STXT(A1;1;3),") ",STXT(A1;4;3),"-",STXT(A1;7;4))

VBA pour automatisation :

Function ExtraireNumTel(Texte As String) As String
    Dim i As Integer
    Dim Chiffres As String
    Dim FormatTel As String
    Chiffres = ""

    ' Extraire uniquement les chiffres
    For i = 1 To Len(Texte)
        If Mid(Texte, i, 1) Like "[0-9]" Then
            Chiffres = Chiffres & Mid(Texte, i, 1)
        End If
    Next i

    ' Ajouter le format standard (XXX) XXX-XXXX
    If Len(Chiffres) = 10 Then
        FormatTel = "(" & Left(Chiffres, 3) & ") " & Mid(Chiffres, 4, 3) & "-" & Right(Chiffres, 4)
    Else
        FormatTel = Chiffres ' Si le format est incorrect, afficher les chiffres
    End If

    ExtraireNumTel = FormatTel
End Function

Utilisez la fonction dans une cellule :

=ExtraireNumTel(A1)

Résultat formaté :

(123) 456-7890

Cas 2 : Extraire plusieurs blocs numériques

Si vos données contiennent plusieurs blocs de chiffres séparés, utilisez Power Query pour extraire chaque bloc séparément.

Données source :

Code: 123, ID: 456, Value: 789

Étapes dans Power Query :

  1. Chargez les données dans Power Query.
  2. Séparez les colonnes par délimiteur (ex. :, , ou espace).
  3. Utilisez Text.Select pour extraire uniquement les chiffres dans chaque colonne.
  4. Combinez les résultats dans une seule colonne ou gardez-les séparés.

Résultat :

  • Bloc 1 : 123
  • Bloc 2 : 456
  • Bloc 3 : 789

7. Gérer des cas spécifiques avec Power Query ou VBA

Extraire uniquement les chiffres après un mot-clé spécifique

Données source :

Order1234Status5678

VBA Exemple :

Function ExtraireAprèsMotClé(Texte As String, MotClé As String) As String
    Dim Position As Integer
    Dim i As Integer
    Dim Resultat As String
    Resultat = ""

    ' Trouver la position du mot-clé
    Position = InStr(1, Texte, MotClé, vbTextCompare)
    If Position > 0 Then
        ' Extraire les chiffres après le mot-clé
        For i = Position + Len(MotClé) To Len(Texte)
            If Mid(Texte, i, 1) Like "[0-9]" Then
                Resultat = Resultat & Mid(Texte, i, 1)
            Else
                Exit For ' Arrêter si un caractère non numérique est rencontré
            End If
        Next i
    End If

    ExtraireAprèsMotClé = Resultat
End Function

Utilisez cette fonction dans Excel pour extraire les chiffres après un mot-clé spécifique :

=ExtraireAprèsMotClé(A1, "Order")

Résultat :

1234

8. Nettoyage et vérification des résultats

Nettoyage avec SUPPRESPACE

Après avoir extrait les chiffres, supprimez les espaces inutiles :

=SUPPRESPACE(A1)

Validation avec des règles

Pour vérifier que seules des valeurs numériques sont extraites, utilisez une mise en forme conditionnelle :

  1. Sélectionnez la plage des résultats.
  2. Allez dans Mise en forme conditionnelle > Nouvelle règle.
  3. Utilisez la formule suivante : =ESTNUM(A1)
  4. Appliquez une mise en surbrillance pour identifier les cellules non valides.

9. Astuces pour optimiser l’extraction

  1. Travaillez par lots : Si vos données sont volumineuses, utilisez Power Query pour des performances optimales.
  2. Utilisez des colonnes auxiliaires : Cela facilite la révision et le nettoyage des données.
  3. Testez vos solutions : Essayez d’abord sur un échantillon pour éviter des erreurs sur l’ensemble des données.

Résumé des méthodes : Choisissez selon vos besoins

MéthodeComplexitéIdéal pour
Formule Excel (SUBSTITUE, GAUCHE)FacilePetits ensembles de données
Macro VBAMoyenneAutomatisation répétée sur de grands ensembles
Power QueryAvancéeNettoyage et transformation en masse
Script PythonAvancéeAnalyses complexes et externes

AZ

Recent Posts

Fiche recette professionnelle : modèle Word, générateur et exemple

La fiche recette professionnelle est un document indispensable pour transformer une préparation culinaire en une…

16 heures ago

Fiche technique cuisine : modèles Excel, PDF, Word et CAP Cuisine

En cuisine, réussir un plat ne dépend pas uniquement du talent du cuisinier. La régularité,…

18 heures ago

Plan de reprise d’activité informatique Excel (PRA informatique) : modèle XLS, exemple, RTO/RPO et tableau de bord

Un PRA efficace aide l’entreprise à redémarrer ses applications critiques après une panne, un ransomware…

5 jours ago

Plan de continuité d’activité Excel : modèle PCA XLS, générateur dynamique et exemples par secteur

Chaque organisation est confrontée à des événements susceptibles de perturber son fonctionnement : cyberattaque, panne…

5 jours ago

AWS TCO Calculator : Simulateur, Calcul du TCO, ROI et Modèle Excel

La plupart des projets de migration vers AWS commencent par une estimation des coûts mensuels.…

5 jours ago

Simulateur TCO Chariot Élévateur Diesel vs Électrique | Calcul ROI, Coût Total et Comparatif

Le prix affiché sur un devis raconte rarement toute l'histoire. Deux chariots élévateurs peuvent sembler…

5 jours ago

This website uses cookies.