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

Comment extraire le texte situé avant ou après le deuxième espace ou la deuxième virgule dans Excel ?

AuteurXiaoyang Date de modification

Lorsque vous travaillez avec des données textuelles dans Excel, il vous arrive fréquemment de rencontrer des chaînes contenant plusieurs espaces, virgules ou autres délimiteurs. Bien que la fonctionnalité Texte en colonnes d’Excel permette de fractionner le contenu d’une cellule en colonnes distinctes selon un délimiteur choisi, il existe des cas où vous avez besoin d’une solution plus précise — comme extraire tout ce qui se trouve avant ou après le deuxième espace ou la deuxième virgule dans une cellule. Cet article présente plusieurs méthodes pratiques pour y parvenir : des formules ciblées pour extraire le texte avant ou après le deuxième espace ou la deuxième virgule, des solutions robustes grâce à des macros VBA pour automatiser le traitement ou gérer de grands volumes de données, ainsi que des options polyvalentes via Power Query pour un prétraitement avancé.

une capture d’écran de la chaîne de texte d’origine et des deux segments séparés par le deuxième espace

Extraire le texte avant le deuxième espace ou la deuxième virgule à l’aide d’une formule

Extraire le texte après le deuxième espace ou la deuxième virgule à l’aide d’une formule

Extraire le texte avant ou après le deuxième délimiteur (espace/virgule) avec du code VBA


Extraire le texte avant le deuxième espace ou la deuxième virgule à l’aide d’une formule

Pour isoler la partie d’une cellule située avant le deuxième espace, combinez plusieurs fonctions Excel.

1. Saisissez la formule suivante dans une cellule vide où vous souhaitez afficher le résultat (par exemple, la cellule)C2) :

=IF(ISERROR(FIND(" ",A2,FIND(" ",A2,1)+1)),A2,LEFT(A2,FIND(" ",A2,FIND(" ",A2,1)+1)))

2. Appuyez sur Entrée. Ensuite, utilisez la poignée de recopie pour étirer la formule vers le bas sur toutes les lignes à traiter. Le résultat affichera tout le texte situé avant le deuxième espace dans chaque ligne correspondante — voir la capture d’écran ci-dessous :

Conseil :Si vous souhaitez extraire le texte avant la deuxième virgule ou un autre délimiteur, remplacez simplement le caractère espace ()" ") dans la formule par le délimiteur de votre choix. Par exemple, pour une virgule :

=IF(ISERROR(FIND(",",A2,FIND(",",A2,1)+1)),A2,LEFT(A2,FIND(",",A2,FIND(",",A2,1)+1)))

Cette approche est rapide et efficace pour des extractions ponctuelles ou lorsque vous travaillez avec des jeux de données de taille modérée. Toutefois, si le texte est très irrégulier ou si le nombre de délimiteurs varie fortement d’une ligne à l’autre, des ajustements supplémentaires de la formule peuvent être nécessaires. Veillez également aux espaces superflus ou aux cellules vides, qui peuvent influencer les résultats. Vérifiez toujours attentivement la sortie lorsque vous appliquez ces formules à des données réelles.

une capture d’écran de kutools for excel ia

Libérez la magie d’Excel avec Kutools IA

  • Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
  • formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
  • Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
  • Interprétation de formules : Décryptez facilement les formules complexes.
  • Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Améliorez vos capacités Excel grâce à des outils alimentés par l’intelligence artificielle.Téléchargez dès maintenantet découvrez une efficacité inégalée !

Extraire le texte après le deuxième espace ou la deuxième virgule à l’aide d’une formule

Pour extraire le texte situé après le deuxième espace dans une cellule, combinez les fonctions STXT et CHERCHE.

1. Saisissez la formule suivante dans la cellule cible (par exemple, D2) :

=MID(A2, FIND(" ", A2, FIND(" ", A2)+1)+1,256)

2. Appuyez sur Entrée. Étirez la poignée de recopie vers le bas sur toutes les lignes nécessitant une extraction. Cela affichera tout ce qui suit le deuxième espace pour chaque ligne, comme illustré dans la capture d’écran :

Conseil : Pour extraire le texte après la deuxième virgule ou tout autre séparateur, remplacez l’espace dans la formule par le délimiteur souhaité. Dans le cas d’une virgule, la formule devient :

=MID(A2, FIND(",", A2, FIND(",", A2)+1)+1,256)

Extraire le texte avant ou après le deuxième délimiteur (espace/virgule) avec du code VBA

Pour les grands jeux de données, les extractions répétées ou les scénarios d’automatisation, l’utilisation d’une macro VBA constitue une solution particulièrement efficace. Grâce au VBA, vous pouvez extraire le texte situé avant ou après le deuxième espace, la deuxième virgule ou tout autre délimiteur — ce qui optimise votre productivité lorsque vous travaillez avec diverses structures de données ou que vous avez besoin d’une procédure reproductible.

1. Sélectionnez Développeur > Visual Basic. Dans la fenêtre Microsoft Visual Basic pour Applications qui s’ouvre, cliquez sur Insertion > Module, puis saisissez le code suivant dans la fenêtre du module :

Sub ExtractTextSecondDelimiter()
    Dim rng As Range
    Dim cell As Range
    Dim sep As String
    Dim direction As String
    Dim arr As Variant
    Dim result As String
    Dim pos1 As Long
    Dim pos2 As Long
    Dim xTitleId As String
    Dim outputCell As Range
    Dim i As Long
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    Set rng = Application.Selection
    Set rng = Application.InputBox("Select text range to extract from", xTitleId, rng.Address, Type:=8)
    If rng Is Nothing Then Exit Sub
    sep = Application.InputBox("Enter delimiter (e.g. space or comma)", xTitleId, " ", Type:=2)
    If sep = "" Then Exit Sub
    direction = Application.InputBox("Type 'before' for text before, 'after' for text after the 2nd delimiter", xTitleId, "before", Type:=2)
    If direction = "" Then Exit Sub
    Set outputCell = Application.InputBox("Select the first cell to output the result", xTitleId, Type:=8)
    If outputCell Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    i = 0
    For Each cell In rng
        If Not IsEmpty(cell.Value) Then
            pos1 = InStr(1, cell.Value, sep)
            If pos1 > 0 Then
                pos2 = InStr(pos1 + 1, cell.Value, sep)
                If pos2 > 0 Then
                    If LCase(direction) = "before" Then
                        result = Left(cell.Value, pos2 - 1)
                    ElseIf LCase(direction) = "after" Then
                        result = Mid(cell.Value, pos2 + Len(sep))
                    Else
                        result = cell.Value
                    End If
                Else
                    result = cell.Value
                End If
            Else
                result = cell.Value
            End If
            outputCell.Offset(i, 0).Value = result
        End If
        i = i + 1
    Next
    Application.ScreenUpdating = True
    MsgBox "Extraction completed.", vbInformation, xTitleId
End Sub

2. Après avoir collé le code, cliquez sur le bouton Bouton Exécuter Exécuter ou appuyez sur F5 pour l’exécuter. Une boîte de dialogue s’ouvrira pour vous demander de sélectionner votre plage de données, puis de saisir le délimiteur, d’indiquer si vous souhaitez extraire le texte « avant » ou « après » la deuxième occurrence, et enfin de choisir une cellule où afficher le résultat. La macro inscrira alors le résultat extrait dans la cellule spécifiée.


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