Přejít k hlavnímu obsahu
 

Rychle extrahujte e-mailovou adresu z textového řetězce v aplikaci Excel – úplný průvodce

Autor: Xiaoyang Naposledy změněno: 2024-07-22

Při práci s importovanými daty nebo smíšenými textovými řetězci v aplikaci Excel můžete zjistit, že potřebujete rychle a přesně extrahovat e-mailové adresy. Ať už pracujete se seznamem e-mailových adres smíchaným s jiným textem, nebo potřebujete stahovat e-maily z velké datové sady, existuje několik účinných metod, jak tuto práci provést. Tato příručka vás provede různými technikami extrahování e-mailových adres z textových řetězců, včetně použití Flash Fill, Kutools pro Excel, vzorců, uživatelsky definovaných funkcí a kódu VBA. Každá metoda nabízí různé výhody v závislosti na vašich potřebách a složitosti dat.

snímek obrazovky extrahování e-mailové adresy z řetězce texe v aplikaci Excel

Extrahujte e-mailovou adresu z textového řetězce pomocí Flash Fill

Excel Flash Fill Tato funkce poskytuje rychlý a efektivní způsob automatického formátování nebo extrahování dat na základě vámi definovaných vzorů. V této části si projdeme, jak používat Flash Fill k extrahování e-mailových adres ze sloupce smíšených dat. Tato metoda je užitečná zejména při práci se seznamy obsahujícími různé typy textu a potřebujete pouze extrahovat e-mailové adresy.

  1. Klikněte na první buňku v sousedním sloupci (např. B2), kde chcete zobrazovat e-mailové adresy.
  2. Ručně zadejte e-mailovou adresu z odpovídajícího řádku ve sloupci A a stiskněte vstoupit.
    Pokud například A2 obsahuje "ana varela@gmail.com"," zadejte " ana varela@gmail.com “ do B2.
    snímek obrazovky extrahování e-mailové adresy z řetězce texe pomocí Flash Fill 1
  3. Zůstaňte v buňce B3, stiskněte Ctrl + Eto aktivovat Flash Fill.
    Excel automaticky vyplní zbytek sloupce B extrahovanými e-mailovými adresami.
    snímek obrazovky extrahování e-mailové adresy z řetězce texe pomocí Flash Fill 3
Poznámky:
  • Flash Fill je k dispozici v Excelu 2013 a novějších verzích. Pokud používáte Excel 2010 nebo starší, tato funkce nemusí být dostupná.
  • Ujistěte se, že buňky, na které aplikujete Flash Fill, jsou naformátovány jako „Text“, abyste předešli nechtěným problémům s formátováním.

Jedním kliknutím můžete hromadně extrahovat e-mailovou adresu z textového řetězce pomocí Kutools

Pokud jde o extrahování e-mailových adres z datové sady, Kutools pro ExcelJe Extrahujte e-mailovou adresu nabízí výkonnou alternativu k Flash Fill v Excelu. Zatímco Flash Fill poskytuje manuální přístup k rozpoznávání vzorů, Kutools pro Excel automatizuje proces jediným kliknutím, takže je ideální pro efektivní manipulaci s velkými objemy dat. Tento nástroj nejen zjednodušuje proces extrakce, ale také zajišťuje přesnost a rychlost, zejména při práci se složitými nebo nekonzistentními soubory dat.

Po stažení a instalaci Kutools pro Excel, postupujte následovně:

  1. Vyberte rozsah buněk, ze kterých chcete extrahovat e-mailové adresy. Poté přejděte k výběru Kutools > Text > Extrahujte e-mailovou adresu
  2. Při objevování Extrahujte e-mailovou adresu V dialogovém okně vyberte buňku pro výstup e-mailové adresy a klepněte na OK
    snímek obrazovky extrahování e-mailové adresy z řetězce texe pomocí kutools
Výsledek

Poté jsou okamžitě extrahovány všechny e-mailové adresy v každé buňce zvoleného rozsahu.

snímek obrazovky extrahování e-mailové adresy z řetězce texe pomocí výsledku kutools
Pozor: Pro použití této funkce byste měli mít Kutools pro Excel v počítači. Přejděte ke stažení Kutools pro Excel a získejte 30denní bezplatnou zkušební verzi bez omezení.

Extrahujte e-mailovou adresu z textového řetězce pomocí vzorce

Zde vám představuji dlouhý vzorec pro extrahování pouze e-mailových adres z textu v aplikaci Excel. Postupujte prosím následovně:

1. Do sousední buňky B1 zadejte tento vzorec = TRIM (PRAVÝ (NÁHRADA (VLEVO (A1, FIND ("", A1 & "", FIND ("@", A1)) - 1), "", REPT ("", LEN (A1))), LEN ( A1))).

extrahovaný dokument e-maily 3

2. Pak stiskněte tlačítko vstoupit vyberte buňku B1 a přetáhněte úchyt výplně do rozsahu, ve kterém chcete tento vzorec obsahovat. A e-mailové adresy v rozsahu byly extrahovány z textového řetězce. Viz screenshot:

extrahovaný dokument e-maily 4

Poznámky:

1. Bude také extrahována interpunkce za e-mailovou adresou.

2. Pokud buňky neobsahují e-mailové adresy, zobrazí vzorec chybové hodnoty.

3. Pokud je v buňce více než jedna e-mailová adresa, vzorec extrahuje pouze první adresu.


Extrahujte e-mailovou adresu z textového řetězce pomocí funkce definované uživatelem

Kromě výše uvedeného vzorce vám funkce definovaná uživatelem také pomůže získat e-mailovou adresu z textového řetězce.

1. Podržte ALT + F11 klíče a otevře se Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující makro do okna modulu.

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. Poté kód uložte a zadejte vzorec = ExtractEmailFun (A1) v sousední prázdné buňce, viz screenshot:

extrahovaný dokument e-maily 5

4. A pak stiskněte vstoupit vyberte buňku B1 a přetáhněte úchyt výplně do rozsahu, ve kterém potřebujete vzorec. A všechny e-mailové adresy byly extrahovány z textu buňky. Viz screenshot:

extrahovaný dokument e-maily 6

Poznámky:

1. Pokud buňky nemají e-mailové adresy, odhalí prázdné buňky.

2. Pokud je v buňce více než jedna e-mailová adresa, budou extrahovány všechny e-maily.


Extrahujte e-mailovou adresu z textového řetězce pomocí kódu VBA

Pokud máte pocit, že výše uvedené vzorce jsou pro vás problematické, následující kód VBA vám pomůže extrahovat e-mailové adresy najednou.

1. Podržte ALT + F11 klíče a otevře se a Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující makro do souboru Okno modulu.

VBA: extrahujte e-mailové adresy z textového řetězce

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. Poté stiskněte F5 klíč ke spuštění tohoto kódu a měli byste vybrat rozsah, který chcete použít VBA ve vyskakovacím dialogovém okně, viz screenshot:

extrahovaný dokument e-maily 7

4. Pak klikněte na tlačítko OKa e-mailové adresy byly extrahovány z vybraných textových řetězců. Zobrazit snímky obrazovky:

extrahovaný dokument e-maily 8 -2 extrahovaný dokument e-maily 9

Poznámky:

1. Pokud buňky nemají e-mailové adresy, odhalí prázdné buňky.

2. Všechny e-maily budou extrahovány, pokud je v buňce více než jedna e-mailová adresa.

3. Extrahované e-maily budou pokrývat původní data, takže si je v případě potřeby nejprve zálohujte.


šipka modrá pravá bublina Ukázka: Extrahujte e-mailovou adresu z textového řetězce pomocí programu Kutools pro Excel

Kutools pro Excel: s více než 300 praktickými doplňky aplikace Excel, můžete vyzkoušet bez omezení do 30 dnů. Stáhněte si a vyzkoušejte zdarma hned teď!

Související článek:

Jak extrahovat domény z více e-mailových adres v aplikaci Excel?

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  Vyvolejte funkce Kutools...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!