UDF - Izdvajanje adrese e -pošte iz teksta

Anonim

U slučaju da želite da vam postupak pomogne u dohvaćanju adrese e -pošte iz niza, onda je ovaj članak za vas. U ovom ćemo članku stvoriti UDF za izvlačenje ID -a e -pošte iz teksta.

Pitanje): Podaci koje imam sadrže previše podataka u tekstualnom formatu. Želim da mi VBA kôd pomogne izvući što više ID -ova e -pošte iz teksta kako bih minimizirao svoje ručne napore.

Moramo slijediti korake u nastavku:

  • Kliknite karticu Developer
  • Iz grupe kodova odaberite Visual Basic

U standardni modul unesite sljedeći kôd:

Funkcija ExtractEmailFromText (s As String) As String Dim AtTheRateSignSymbol As Long Dim i As Long

Priguši TempStr kao niz

Const CharList As String = "[A-Za-z0-9 ._-]"

AtTheRateSignSymbol = InStr (s, "@")

Ako je AtTheRateSignSymbol = 0 Tada

ExtractEmailFromText = ""

Drugo

TempStr = "" TempStr = ""

Za i = AtTheRateSignSymbol - 1 do 1 korak -1

Ako je Mid (s, i, 1) Like CharList Then

TempStr = Srednji (s, i, 1) & TempStr

Drugo

Izlaz za

Završi ako

Sljedeći i

Ako je TempStr = "" Zatim izađite iz funkcije

TempStr = TempStr & "@"

Za i = AtTheRateSignSymbol + 1 do Len (s)

Ako je Mid (s, i, 1) Like CharList Then

TempStr = TempStr & Mid (s, i, 1)

Drugo

Izlaz za

Završi ako

Sljedeći i

Završi ako

Ako je desno (TempStr, 1) = "." Tada je TempStr = _

Lijevo (TempStr, Len (TempStr) - 1)

ExtractEmailFromText = TempStr

Završna funkcija

  • U ćeliji B2 formula je
  • = ExtractEmailFromText (A2)

Dobit ćemo rezultat. Snimku ispod pogledajte:

Gornji kôd izdvojit će prvu adresu e -pošte u slučaju da u ćeliji postoji više od 1 e -adrese.

Na ovaj način možemo dohvatiti e -poštu iz teksta.

Preuzimanje - Izdvajanje adrese e -pošte iz teksta - xlsm