Wenn Sie möchten, dass ein Prozess Ihnen beim Abrufen der E-Mail-Adresse aus der Zeichenfolge hilft, ist dieser Artikel genau das Richtige für Sie. In diesem Artikel erstellen wir UDF, um die E-Mail-ID aus dem Text abzurufen.

Frage): Die Daten, die ich habe, enthalten zu viele Informationen im Textformat. Ich möchte einen VBA-Code, der mir hilft, möglichst viele E-Mail-IDs aus dem Text zu extrahieren, um meinen manuellen Aufwand zu minimieren.

Wir müssen die folgenden Schritte ausführen:

Klicken Sie auf die Registerkarte Entwickler. Wählen Sie in der Gruppe Code die Option Visual Basic

img1

aus

===

Geben Sie im Standardmodul den folgenden Code ein:

Funktion 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, „@“)

Wenn AtTheRateSignSymbol = 0, dann

ExtractEmailFromText = „“

Sonst

TempStr = „“

Für i = AtTheRateSignSymbol – 1 bis 1 Schritt -1

Wenn Mid (s, i, 1) CharList mag, dann

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

Sonst

Beenden für

End If

Weiter i

Wenn TempStr = „“, dann beenden Sie die Funktion

TempStr = TempStr & „@“

For i = AtTheRateSignSymbol + 1 To Len (s)

Wenn Mid (s, i, 1) CharList mag, dann

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

Sonst

Beenden für

End If

Weiter i

End If

Wenn richtig (TempStr, 1) = „.“ Dann ist TempStr = _

ExtractEmailFromText = TempStr

End Function

img2

  • In Zelle B2 lautet die Formel

* = ExtractEmailFromText (A2)

Wir werden das Ergebnis bekommen. Siehe folgenden Schnappschuss:

img3

Der obige Code extrahiert die erste E-Mail-Adresse, falls eine Zelle mehr als eine E-Mail-ID enthält.

Auf diese Weise können wir E-Mails aus Text abrufen.

image 19