UDF - Extragerea adresei de e-mail din text

Anonim

În cazul în care doriți un proces care să vă ajute în recuperarea adresei de e-mail din șir, atunci acest articol este pentru dvs. În acest articol, vom crea UDF pentru a extrage ID-ul de e-mail din text.

Întrebare): Datele pe care le conțin conțin prea multe informații în format text. Vreau un cod VBA care să mă ajute să extrag cât mai multe ID-uri de e-mail din text pentru a minimiza eforturile mele manuale.

Trebuie să urmăm pașii de mai jos:

  • Faceți clic pe fila Dezvoltator
  • Din grupul de coduri, selectați Visual Basic

Introduceți următorul cod în modulul standard:

Funcție ExtractEmailFromText (s As String) As String Dim AtTheRateSignSymbol As Long Dim i As Long

Dim TempStr As String

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

AtTheRateSignSymbol = InStr (s, "@")

Dacă AtTheRateSignSymbol = 0 Atunci

ExtractEmailFromText = ""

Altfel

TempStr = ""

Pentru i = AtTheRateSignSymbol - 1 la 1 Pasul -1

Dacă Mid (s, i, 1) Îmi place CharList atunci

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

Altfel

Ieșiți pentru

End If

Apoi eu

Dacă TempStr = "" Apoi ieșiți din funcție

TempStr = TempStr & "@"

Pentru i = AtTheRateSignSymbol + 1 către Len (s)

Dacă Mid (s, i, 1) Îmi place CharList atunci

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

Altfel

Ieșiți pentru

End If

Apoi eu

End If

Dacă dreapta (TempStr, 1) = "." Apoi TempStr = _

Stânga (TempStr, Len (TempStr) - 1)

ExtractEmailFromText = TempStr

Funcția de sfârșit

  • În celula B2, formula este
  • = ExtractEmailFromText (A2)

Vom obține rezultatul. Consultați mai jos instantaneu:

Codul de mai sus va extrage prima adresă de e-mail în cazul în care există mai mult de 1 ID de e-mail într-o celulă.

În acest fel, putem prelua e-mailurile din text.

Descărcare - Extragerea adresei de e-mail din text - xlsm