Hvis du vil at en prosess skal hjelpe deg med å hente e -postadressen fra strengen, er denne artikkelen noe for deg. I denne artikkelen vil vi lage UDF for å trekke e -post -ID -en fra tekst.
Spørsmål): Dataene jeg har inneholder for mye informasjon i tekstformat. Jeg vil ha en VBA -kode for å hjelpe meg med å trekke ut så mange e -post -ID -er fra teksten for å minimere min manuelle innsats.
Vi må følge trinnene nedenfor:
- Klikk på kategorien Utvikler
- Velg Visual Basic fra kodegruppen
Skriv inn følgende kode i standardmodulen:
Funksjon ExtractEmailFromText (s As String) As String Dim AtTheRateSignSymbol As Long Dim i As LongDim TempStr som streng
Const CharList As String = "[A-Za-z0-9 ._-]"
AtTheRateSignSymbol = InStr (s, "@")
Hvis AtTheRateSignSymbol = 0 Da
ExtractEmailFromText = ""
Ellers
TempStr = ""
For i = AtTheRateSignSymbol - 1 til 1 trinn -1
Hvis Mid (s, i, 1) liker CharList Then
TempStr = Mid (s, i, 1) & TempStr
Ellers
Avslutt for
Slutt om
Neste jeg
Hvis TempStr = "" Så avslutt funksjonen
TempStr = TempStr & "@"
For i = AtTheRateSignSymbol + 1 Til Len (er)
Hvis Mid (s, i, 1) liker CharList Then
TempStr = TempStr & Mid (s, i, 1)
Ellers
Avslutt for
Slutt om
Neste jeg
Slutt om
Hvis Høyre (TempStr, 1) = "." Deretter TempStr = _
Venstre (TempStr, Len (TempStr) - 1)
ExtractEmailFromText = TempStr
Sluttfunksjon
- I celle B2 er formelen
- = ExtractEmailFromText (A2)
Vi får resultatet. Se øyeblikksbildet nedenfor:
Koden ovenfor trekker ut den første e -postadressen i tilfelle det er mer enn 1 e -post -ID i en celle.
På denne måten kan vi hente e -post fra tekst.
Last ned - Pakk ut e -postadresse fra tekst - xlsm