Hogyan lehet gyorsan kibontani az e-mail címet a szöveges karakterláncból?
Amikor néhány e-mail címet importál a Webhelyről az Excel munkalapra, ott mindig nem releváns szöveg található, de most csak a tiszta e-mail címeket szeretné kivonni a szöveges karakterláncból (lásd a következő képernyőképeket). Hogyan tudná gyorsan megszerezni csak az e-mail címeket a cellaszövegből?
Kivonat e-mail címet a szöveges karakterláncból a Formula segítségével
Itt bemutatok egy hosszú képletet, amely csak az e-mail címeket vonja ki az Excel szövegéből. Kérjük, tegye a következőket:
1. A szomszédos B1 cellába írja be ezt a képletet = TRIM (JOBB (PÓT (BAL (A1, FIND ("", A1 & "", FIND ("@", A1)) - 1), "", REPT ("", LEN (A1))), HEN A1))).
2. Ezután nyomja meg a gombot belép gombot, majd válassza ki a B1 cellát, és húzza a kitöltő fogantyút arra a tartományra, amelybe ezt a képletet be kívánja állítani. És a tartomány e-mail címeit kibontották a szöveges karakterláncból. Lásd a képernyőképet:
Megjegyzések:
1. Az e-mail utáni írásjeleket is kibontják.
2. Ha a cellák nem tartalmazzák az e-mail címeket, a képlet hibaértékeket jelenít meg.
3. Ha egy cellában egynél több e-mail cím van, a képlet csak az első címet vonja ki.
Több e-mail cím kibontása szöveges karakterláncokból
Kutools az Excel számára'S Kivonat e-mail cím segíthet az e-mail címek gyors és kényelmes kibontásában a szöveges karakterláncokból. Kattintson a Kutools for Excel letöltéséhez!
Kutools az Excel számára: több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. Töltse le és ingyenes próbaverziót most!
Bontsa ki az e-mail címet a szöveges karakterláncból a Felhasználó által definiált funkcióval
A fenti képlet kivételével a Felhasználó által definiált függvény szintén segíthet az e-mail cím megszerzésében a szöveges karakterláncból.
1. Tartsa lenyomva a ALT + F11 gombokat, és ez megnyitja a Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő makrót a Modul ablakba.
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. Ezután mentse el a kódot, és írja be a képletet = ExtractEmailFun (A1) egy szomszédos üres cellában lásd a képernyőképet:
4. Ezután nyomja meg a gombot belép gombot, válassza ki a B1 cellát, és húzza át a kitöltő fogantyút arra a tartományra, amelyre a képletre szüksége van. És az összes e-mail címet kivonták a cellaszövegből. Lásd a képernyőképet:
Megjegyzések:
1. Ha a cellák nem rendelkeznek e-mail címmel, akkor üres cellákat tárnak fel.
2. Ha egy cellában egynél több e-mail cím van, akkor az összes e-mailt kibontjuk.
Kivonat e-mail címet a VBA kóddal ellátott szöveges karakterláncból
Ha úgy érzi, hogy a fenti képletek problémásak az Ön számára, a következő VBA-kód segíthet az e-mail címek kibontásában.
1. Tartsa lenyomva a ALT + F11 gombokat, és megnyílik a Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő makrót a Modul ablak.
VBA: e-mail címek kivonása a szöveges karakterláncból
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. Ezután nyomja meg a gombot F5 kulcs a kód futtatásához, és a felbukkanó párbeszédpanelen ki kell választania egy tartományt, amelyet használni szeretne a VBA használatával, lásd a képernyőképet:
4. Ezután kattintson OK, és az e-mail címek kibontásra kerültek a kiválasztott szöveges karakterláncokból. Képernyőképek megtekintése:
Megjegyzések:
1. Ha a cellák nem rendelkeznek e-mail címmel, akkor üres cellákat tárnak fel.
2. Az összes e-mailt kibontjuk, ha egy cellában egynél több e-mail cím van.
3. A kibontott e-mailek lefedik az eredeti adatokat, ezért jobb, ha először biztonsági másolatot készít az adatokról.
Egy kattintással bontsa ki az e-mail címet a szöveges karakterláncból a Kutools for Excel segítségével
A fenti módszerek kissé bonyolultnak tűnnek az Excel kezdők számára, itt egy gyors és egyszerű eszközt tudok ajánlani - Kutools az Excel számára, Annak Kivonat e-mail cím segédprogram, különösebb erőfeszítés nélkül kivonhatja az e-mail címeket a szöveges karakterláncokból.
Kutools az Excel számára : több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. |
Ha telepítve van Kutools az Excel számára, kérjük, tegye a következőket:
1. Jelölje ki a szöveges karakterláncokat tartalmazó cellákat.
2. Kattints Kutools > szöveg > Kivonat e-mail cím, lásd a képernyőképet:
3. És egy Kivonat e-mail cím megjelenik a párbeszédpanel, válassza ki azt a cellát, ahová az eredményt fel szeretné tenni, lásd a képernyőképet:
4. Ezután kattintson OK gombra, az összes e-mail címet kivonták a szöveges karakterláncokból, lásd a képernyőképet:
Kattintson a letöltéshez és a Kutools for Excel ingyenes próbaverziójához most!
Demo: E-mail cím kibontása a szöveges karakterláncból a Kutools for Excel segítségével
Kapcsolódó cikk:
Hogyan lehet kibontani a domaineket több e-mail címből az Excelben?
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!