Passer au contenu principal
 

Extraire rapidement l'adresse e-mail d'une chaîne de texte dans Excel - Un guide complet

Auteur : Xiaoyang Dernière modification: 2024-07-22

Lorsque vous traitez des données importées ou des chaînes de texte mixtes dans Excel, vous devrez peut-être extraire des adresses e-mail rapidement et avec précision. Que vous travailliez avec une liste d'adresses e-mail mélangée à d'autres textes ou que vous ayez besoin d'extraire des e-mails d'un grand ensemble de données, il existe plusieurs méthodes efficaces pour faire le travail. Ce guide vous expliquera diverses techniques pour extraire des adresses e-mail à partir de chaînes de texte, notamment en utilisant Flash Fill, Kutools for Excel, des formules, des fonctions définies par l'utilisateur et du code VBA. Chaque méthode offre des avantages différents selon vos besoins et la complexité des données.

capture d'écran de l'extraction de l'adresse e-mail à partir d'une chaîne texe dans Excel

Extraire l'adresse e-mail de la chaîne de texte avec Flash Fill

Excel Remplissage Flash La fonctionnalité fournit un moyen rapide et efficace de formater ou d'extraire automatiquement des données en fonction des modèles que vous définissez. Dans cette section, nous verrons comment utiliser Flash Fill pour extraire des adresses e-mail à partir d'une colonne de données mixtes. Cette méthode est particulièrement utile lorsqu'il s'agit de listes contenant différents types de texte et il suffit d'extraire les adresses e-mail.

  1. Cliquez sur la première cellule de la colonne adjacente (par exemple, B2) où vous souhaitez que les adresses e-mail apparaissent.
  2. Saisissez manuellement l'adresse e-mail dans la ligne correspondante de la colonne A, puis appuyez sur Entrer.
    Par exemple, si A2 contient "Ana Varela@gmail.com," taper " Ana Varela@gmail.com " en B2.
    capture d'écran de l'extraction de l'adresse e-mail à partir d'une chaîne texe à l'aide de Flash Fill 1
  3. Restez dans la cellule B3, appuyez sur Ctrl + Eto activer Remplissage Flash.
    Excel remplira automatiquement le reste de la colonne B avec les adresses e-mail extraites.
    capture d'écran de l'extraction de l'adresse e-mail à partir d'une chaîne texe à l'aide de Flash Fill 3
Florales:
  • Remplissage Flash est disponible dans Excel 2013 et versions ultérieures. Si vous utilisez Excel 2010 ou une version antérieure, cette fonctionnalité peut ne pas être disponible.
  • Assurez-vous que les cellules dans lesquelles vous appliquez Flash Fill sont formatées en « Texte » pour éviter les problèmes de formatage indésirables.

Un clic pour extraire par lots l'adresse e-mail de la chaîne de texte avec Kutools

Lorsqu'il s'agit d'extraire des adresses e-mail d'un ensemble de données, Kutools for Excel's Extraire l'adresse e-mail La fonctionnalité offre une alternative puissante au Flash Fill d'Excel. Alors que Flash Fill propose une approche manuelle de la reconnaissance de formes, Kutools for Excel automatise le processus en un seul clic, ce qui le rend idéal pour gérer efficacement de gros volumes de données. Cet outil simplifie non seulement le processus d'extraction, mais garantit également précision et rapidité, en particulier lorsqu'il s'agit d'ensembles de données complexes ou incohérents.

Après avoir téléchargé et installé Kutools pour Excel, procédez comme suit:

  1. Sélectionnez la plage de cellules à partir de laquelle vous souhaitez extraire les adresses e-mail. Allez ensuite sélectionner Kutools > Texte > Extraire l'adresse e-mail
  2. Dans le popping Extraire l'adresse e-mail boîte de dialogue, sélectionnez une cellule pour afficher l'adresse e-mail et cliquez sur OK
    capture d'écran de l'extraction de l'adresse e-mail de la chaîne texe à l'aide de kutools
Résultat

Ensuite, toutes les adresses e-mail de chaque cellule de la plage sélectionnée sont immédiatement extraites.

capture d'écran de l'extraction de l'adresse e-mail de la chaîne texe à l'aide du résultat kutools
Notes: Pour utiliser cette fonction, vous devez avoir Kutools for Excel installé sur votre ordinateur. Allez télécharger Kutools for Excel pour obtenir un essai gratuit de 30 jours sans aucune limitation.

Extraire l'adresse e-mail de la chaîne de texte avec la formule

Ici, je vous présente une longue formule pour extraire uniquement les adresses e-mail du texte dans Excel. Veuillez procéder comme suit:

1. Dans la cellule B1 adjacente, entrez cette formule = TRIM (RIGHT (SUBSTITUTE (LEFT (A1, FIND ("", A1 & "", FIND ("@", A1)) - 1), "", REPT ("", LEN (A1))), LEN ( A1))).

doc-extrait-emails3

2. Puis appuyez Entrer , puis sélectionnez la cellule B1 et faites glisser la poignée de recopie vers la plage dans laquelle vous souhaitez contenir cette formule. Et les adresses e-mail de la plage ont été extraites de la chaîne de texte. Voir la capture d'écran:

doc-extrait-emails4

Notes:

1. La ponctuation après l'adresse e-mail sera également extraite.

2. Si les cellules ne contiennent pas les adresses e-mail, la formule affichera les valeurs d'erreur.

3. S'il y a plus d'une adresse e-mail dans une cellule, la formule extraira uniquement la première adresse.


Extraire l'adresse e-mail de la chaîne de texte avec la fonction définie par l'utilisateur

À l'exception de la formule ci-dessus, une fonction définie par l'utilisateur peut également vous aider à obtenir l'adresse e-mail à partir de la chaîne de texte.

1. Maintenez le ALT + F11 clés, et il ouvre le Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez la macro suivante dans la fenêtre Module.

Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
OutStr = ""
Index = 1
Do While True
    Index1 = VBA.InStr(Index, extractStr, "@")
    getStr = ""
    If Index1 > 0 Then
        For p = Index1 - 1 To 1 Step -1
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = Mid(extractStr, p, 1) & getStr
            Else
                Exit For
            End If
        Next
        getStr = getStr & "@"
        For p = Index1 + 1 To Len(extractStr)
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = getStr & Mid(extractStr, p, 1)
            Else
                Exit For
            End If
        Next
        Index = Index1 + 1
        If OutStr = "" Then
            OutStr = getStr
        Else
            OutStr = OutStr & Chr(10) & getStr
        End If
    Else
        Exit Do
    End If
Loop
ExtractEmailFun = OutStr
End Function

3. Ensuite, enregistrez le code et entrez la formule = ExtractEmailFun (A1) dans une cellule vide adjacente, voir capture d'écran:

doc-extrait-emails5

4. Et puis appuyez sur Entrer , sélectionnez la cellule B1 et faites glisser la poignée de recopie vers la plage dont vous avez besoin pour la formule. Et toutes les adresses e-mail ont été extraites du texte de la cellule. Voir la capture d'écran:

doc-extrait-emails6

Notes:

1. Si les cellules n'ont pas les adresses e-mail, les cellules vides seront révélées.

2. S'il y a plus d'une adresse e-mail dans une cellule, tous les e-mails seront extraits.


Extraire l'adresse e-mail de la chaîne de texte avec le code VBA

Si vous pensez que les formules ci-dessus sont gênantes pour vous, le code VBA suivant peut vous aider à extraire les adresses e-mail en une seule.

1. Maintenez le ALT + F11 clés, et il ouvre un Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez la macro suivante dans le Fenêtre du module.

VBA: extraire les adresses e-mail de la chaîne de texte

Sub ExtractEmail()
'Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = "[A-Za-z0-9._-]"
For i = 1 To UBound(arr, 1)
    For j = 1 To UBound(arr, 2)
        extractStr = arr(i, j)
        outStr = ""
        Index = 1
        Do While True
            Index1 = VBA.InStr(Index, extractStr, "@")
            getStr = ""
            If Index1 > 0 Then
                For p = Index1 - 1 To 1 Step -1
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = Mid(extractStr, p, 1) & getStr
                    Else
                        Exit For
                    End If
                Next
                getStr = getStr & "@"
                For p = Index1 + 1 To Len(extractStr)
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = getStr & Mid(extractStr, p, 1)
                    Else
                        Exit For
                    End If
                Next
                Index = Index1 + 1
                If outStr = "" Then
                    outStr = getStr
                Else
                    outStr = outStr & Chr(10) & getStr
                End If
            Else
                Exit Do
            End If
        Loop
        arr(i, j) = outStr
    Next
Next
WorkRng.Value = arr
End Sub

3. Puis appuyez F5 clé pour exécuter ce code, et vous devez sélectionner une plage que vous souhaitez utiliser le VBA dans la boîte de dialogue pop-out, voir capture d'écran:

doc-extrait-emails7

4. Puis clique OKet les adresses e-mail ont été extraites des chaînes de texte sélectionnées. Voir les captures d'écran:

doc-extrait-emails8 -2 doc-extrait-emails9

Notes:

1. Si les cellules n'ont pas les adresses e-mail, cela révélera des cellules vides.

2. Tous les e-mails seront extraits, s'il y a plus d'une adresse e-mail dans une cellule.

3. Les e-mails extraits couvriront les données d'origine, vous feriez donc mieux de sauvegarder les données en premier si vous en avez besoin.


flèche bleue bulle droite Démo : extraire l'adresse e-mail d'une chaîne de texte avec Kutools for Excel

Kutools for Excel: avec plus de 300 compléments Excel pratiques, essai gratuit sans limitation dans 30 jours. Téléchargez et essayez gratuitement maintenant!

Article connexe:

Comment extraire des domaines de plusieurs adresses e-mail dans Excel?

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche 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 spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la 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 facilite grandement votre travail

  • Activer 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 réduit des centaines de clics de souris chaque jour!