UDF – テキストからメールアドレスを抽出
文字列からメールアドレスを取得するのに役立つプロセスが必要な場合は、この記事が役に立ちます。この記事では、テキストからメールIDを取得するUDFを作成します。
質問):私が持っているデータには、テキスト形式の情報が多すぎます。手作業を最小限に抑えるために、テキストからできるだけ多くの電子メールIDを抽出するのに役立つVBAコードが必要です。
以下の手順に従う必要があります:
[開発者]タブをクリックします。[コード]グループから、[VisualBasic]を選択します
===
標準モジュールに次のコードを入力します:
関数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、 “@”)
AtTheRateSignSymbol = 0の場合
ExtractEmailFromText = “”
その他
TempStr = “”
For i = AtTheRateSignSymbol-1対1ステップ-1
If Mid(s、i、1)Like CharList Then
TempStr = Mid(s、i、1)&TempStr
その他
終了
終了If
次の私
If TempStr = “” Then Exit Function
TempStr = TempStr& “@”
For i = AtTheRateSignSymbol + 1 To Len(s)
If Mid(s、i、1)Like CharList Then
TempStr = TempStr&Mid(s、i、1)
その他
終了
終了If
次の私
終了If
If Right(TempStr、1)= “。”次に、TempStr = _
Left(TempStr、Len(TempStr)-1)
ExtractEmailFromText = TempStr
終了関数
-
セルB2では、数式は
です。 === * = ExtractEmailFromText(A2)
結果が出ます。以下のスナップショットを参照してください:
上記のコードは、セルに複数のメールIDがある場合に、最初のメールアドレスを抽出します。
このようにして、テキストからメールを取得できます。