Jak wyodrębnić adresy e-mail w arkuszu kalkulacyjnym programu Excel
Lista adresów e-mail programu Excel powinna zawierać wyłącznie adresy. Jeśli jednak arkusz kalkulacyjny otrzymał dane z formularza zewnętrznego, kolumna może zawierać nietrafny tekst. Jedna komórka może przeczytać "Mój adres to [email protected]", a inna może powiedzieć "kontakt na [email protected]". Możesz wyodrębnić adresy e-mail do nowej kolumny, aby program Excel mógł ich używać do takich aplikacji, jak korespondencja seryjna. Jedną z metod jest napisanie skryptu Visual Basic.
Napisz funkcję
1.
Naciśnij klawisze "Alt" i "F11", aby otworzyć edytor Visual Basic Excel.
2.
Wpisz następujący kod, aby otworzyć nową funkcję:
Funkcja ExtractCellEmail (cell As Range) As String
3.
Dodaj następujący kod, aby wyodrębnić cały tekst z danej komórki:
Dim contents As String contents = cell.Text
4.
Dodaj następujący kod, aby zidentyfikować pozycję symbolu "@" w tekście:
AtPosition = InStr (1, zawartość, "@")
5.
Dodaj następujące dwa wiersze, aby zidentyfikować początkowe i końcowe pozycje adresu e-mail, używając pozycji symbolu "@":
AddressStartingPosition = InStrRev (zawartość, "", AtPosition) AddressEndingPosition = InStr (AtPosition, zawartość, "")
6.
Dodaj następujący wiersz, aby wyodrębnić adres e-mail za pomocą pozycji początkowej i końcowej:
emailAddress = Trim (Mid (zawartość, AddressStartingPosition, AddressEndingPosition - AddressStartingPosition))
7.
Dodaj następujący wiersz, aby wydrukować wyodrębniony adres w sąsiedniej komórce:
ActiveCell.Offset (0, 1) .Value = adres_Adresu
8.
Wpisz następujący kod, aby zamknąć tę funkcję:
Funkcja końca
Zastosuj funkcję do zakresu komórek
1.
Wpisz następujący kod po funkcji, aby otworzyć nowe makro:
Sub mcrExtractColumnAddresses ()
2.
Wpisz następujący kod, aby otworzyć pętlę:
Robić
3.
Wpisz następujący kod po linii pętli, aby wywołać funkcję, którą napisałeś:
Call ExtractEmails (ActiveCell)
4.
Wpisz następujący kod po poprzednim wierszu, aby wybrać następną komórkę w kolumnie:
ActiveCell.Offset (1, 0). Wybierz
5.
Dodaj następującą linię, aby zamknąć pętlę:
Loop do IsEmpty (ActiveCell)
6.
Dodaj następujący kod, aby zamknąć makro:
Napis końcowy
7.
Przejdź do okna arkusza kalkulacyjnego.
8.
Wybierz pierwszą komórkę, której adres e-mail chcesz wyodrębnić.
9.
Wróć do okna Visual Basic. Umieść kursor myszy w bloku mcrExtractColumnAddresses (), jeśli jeszcze go tam nie ma.
10.
Naciśnij klawisz "F5", aby uruchomić makro i wyodrębnić adresy e-mail.
Ostrzeżenie
- Ten proces działa tak długo, jak jedynymi symbolami "@" są te w adresach e-mail. Możesz bezpiecznie założyć, że będzie to prawda dla większości komórek, ale rozważ przewijanie listy wyodrębnionych adresów e-mail, aby ręcznie wychwycić wszelkie błędy.