Nel caso in cui desideri che un processo ti aiuti a recuperare l’indirizzo email dalla stringa, questo articolo è per te. In questo articolo, creeremo UDF per estrarre l’ID e-mail dal testo.

Domanda): I dati in mio possesso contengono troppe informazioni in formato testo. Voglio un codice VBA che mi aiuti a estrarre il maggior numero di ID e-mail dal testo per ridurre al minimo i miei sforzi manuali.

Dobbiamo seguire i seguenti passaggi:

Fare clic sulla scheda Sviluppatore Dal gruppo Codice, selezionare Visual Basic

img1

===

Inserisci il seguente codice nel modulo standard:

Funzione 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, “@”)

Se AtTheRateSignSymbol = 0 Allora

ExtractEmailFromText = “”

Altrimenti

TempStr = “”

Per i = AtTheRateSignSymbol – Passaggio 1 a 1 -1

If Mid (s, i, 1) Like CharList Then

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

Altrimenti

Esci per

End If

Avanti i

Se TempStr = “” Esci dalla funzione

TempStr = TempStr & “@”

For i = AtTheRateSignSymbol + 1 To Len (s)

If Mid (s, i, 1) Like CharList Then

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

Altrimenti

Esci per

End If

Avanti i

End If

Se è corretto (TempStr, 1) = “.” Quindi TempStr = _

Sinistra (TempStr, Len (TempStr) – 1)

ExtractEmailFromText = TempStr

Fine funzione

img2

  • Nella cella B2, la formula è

* = ExtractEmailFromText (A2)

Otterremo il risultato. Fare riferimento all’istantanea di seguito:

img3

Il codice sopra estrarrà il primo indirizzo email nel caso in cui ci sia più di 1 ID email in una cella.

In questo modo, possiamo recuperare le email sia dal testo.

image 19