KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel でテキスト文字列から電子メールアドレスを抽出するを素早く抽出する完全ガイド

著者Xiaoyang変更日

Excel でインポートされたデータや混在したテキスト文字列を扱う際、電子メールアドレスを迅速かつ正確に抽出する必要が生じることがあります。たとえば、他のテキストと混在したメールアドレスのリストを処理している場合や、大規模なデータセットからメールアドレスを抽出したい場合など、作業を効率的に完了させるためのさまざまな方法があります。本ガイドでは、フラッシュフィル、Kutools for Excel、数式、ユーザー定義関数、VBA コードを活用して、テキスト文字列から電子メールアドレスを抽出する手法を詳しく解説します。各手法は、ご要望やデータの複雑さに応じて異なるメリットを提供します。

Excel でメールアドレスを抽出するための混在したテキスト文字列のスクリーンショット

フラッシュフィルでテキスト文字列から電子メールアドレスを抽出するを抽出

Excel のフラッシュフィル機能は、ユーザーが定義したパターンに基づいてデータを自動的に整形・抽出するための迅速で効率的な方法を提供します。このセクションでは、混在データの列から電子メールアドレスを抽出する方法を説明します。この方法は、さまざまな種類のテキストが混在したリストから特定のメールアドレスのみを抽出したい場合に特に役立ちます。

  1. 隣接する列(例:B2)でメールアドレスを表示したいセルをクリックしてください。
  2. 列 A の対応する行からメールアドレスを手動で入力し、Enter キーを押してください。
    たとえば、A2 に「ana varela@gmail.com」が含まれている場合、B2 に「ana varela@gmail.com」と入力します。
    Flash Fill を使用する前に Excel でメールアドレスを手動入力しているスクリーンショット
  3. セル B3 にカーソルを置いたまま、「Ctrl + E」を押してフラッシュフィルを有効にします。
    Excel が列 B の残りのセルに自動的に電子メールアドレスを入力します。
    Excel の Flash Fill を使用してメールアドレスを抽出している GIF
注意事項
  • フラッシュフィルはExcel 2013 以降のバージョンでご利用いただけます。Excel 2010 以前をご利用の場合、この機能が使えないことがあります。
  • フラッシュフィルを適用するセルが「テキスト」形式に設定されていることをご確認ください。これにより、意図しない書式の問題を回避できます。

Kutools でワンクリックで一括してテキスト文字列から電子メールアドレスを抽出するを抽出

電子メールアドレスを抽出する際には、Kutools for Excel の「電子メールアドレスを抽出する」機能が、Excel のフラッシュフィルに代わる強力な選択肢となります。フラッシュフィルがパターン認識に対して手動でのアプローチを必要とするのに対し、Kutools for Excel はワンクリックでこのプロセスを自動化し、大量のデータを効率的に処理できます。このツールは抽出作業を大幅に簡素化するだけでなく、特に複雑または不整合のあるデータセットを扱う際にも、高い精度とスピードを実現します。

Kutools for Excelは300 以上の高度な機能を提供し、複雑な作業を効率化して、創造性と生産性を高めます。AI 機能と統合されたKutools は、正確にタスクを自動化し、データ管理を簡単にします。Kutools for Excel の詳細情報。。。         無料トライアル。。。

Kutools for Excel をダウンロードしてインストールした後、以下の手順に従ってください。

  1. 電子メールアドレスを抽出したいセル範囲を選択し、「Kutools」>「テキスト」>「電子メールアドレスを抽出する」の順にクリックします。
  2. 表示された「電子メールアドレスを抽出する」ダイアログボックスで、メールアドレスを出力するセルを選択して「OK」をクリックしてください。
    Kutools のメールアドレス抽出機能が動作しているスクリーンショット
結果

すると、「範囲を選択してください」の各セル内のすべてのメールアドレスが即座に抽出されます。

Kutools を使用してメールアドレスを抽出した結果を示すスクリーンショット

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手


数式でテキスト文字列から電子メールアドレスを抽出するを抽出

ここでは、Excel のテキストからメールアドレスのみを抽出するための長い数式をご紹介します。以下の手順に従ってください。

1。隣接するセル B1 に、次の数式を入力してください。

=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (" ",A1&" ",FIND("@",A1))-1)," ", REPT(" ",LEN(A1))),LEN(A1)))

Excel でメールアドレスを抽出するための数式を示すスクリーンショット

2。Enter キーを押した後、セル B1 を選択し、フィルハンドルを数式を適用したい範囲までドラッグしてください。すると、指定された範囲内のテキスト文字列からメールアドレスが自動的に抽出されます。下のスクリーンショットをご確認ください。

Excel で数式を使用してメールアドレスを抽出したスクリーンショット

注意事項:

1。メールアドレスの後にある句読点も抽出されます。

2。セルにメールアドレスが含まれていない場合、数式はエラー値を返します。

3。セル内に複数のメールアドレスが含まれる場合、数式は最初のもののみを抽出します。


ユーザー定義関数でテキスト文字列から電子メールアドレスを抽出するを抽出

上記の数式以外にも、ユーザー定義関数を使ってテキスト文字列からメールアドレスを抽出できます。

1。「ALT + F11」キーを押すと、「Microsoft Visual Basic for Applications」ウィンドウが起動します。

2。「挿入」>「モジュール」をクリックし、表示されるモジュールウィンドウに次のマクロを貼り付けてください。

Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
OutStr = ""
Index = 1
Do While True
    Index1 = VBA.InStr(Index, extractStr, "@")
    getStr = ""
    If Index1 > 0 Then
        For p = Index1 - 1 To 1 Step -1
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = Mid(extractStr, p, 1) & getStr
            Else
                Exit For
            End If
        Next
        getStr = getStr & "@"
        For p = Index1 + 1 To Len(extractStr)
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = getStr & Mid(extractStr, p, 1)
            Else
                Exit For
            End If
        Next
        Index = Index1 + 1
        If OutStr = "" Then
            OutStr = getStr
        Else
            OutStr = OutStr & Chr(10) & getStr
        End If
    Else
        Exit Do
    End If
Loop
ExtractEmailFun = OutStr
End Function

3。その後、コードを保存し、隣接する空白セルに数式 =ExtractEmailFun(A1)を入力してください(下のスクリーンショットを参照)。

Excel でメールアドレスを抽出するユーザー定義関数を示すスクリーンショット

4。Enter キーを押してセル B1 を選択し、必要な範囲までフィルハンドルをドラッグしてください。これにより、セル内のテキストからすべてのメールアドレスが自動的に抽出されます。下のスクリーンショットをご確認ください。

Excel でユーザー定義関数を使用してメールアドレスを抽出したスクリーンショット

注意事項:

1。セルにメールアドレスが含まれていない場合、そのセルは空白として表示されます。

2。セル内に複数のメールアドレスが含まれている場合、すべてが抽出されます。


VBA コードでテキスト文字列から電子メールアドレスを抽出するを抽出

上記の数式が煩雑に感じられる場合は、次の VBA コードで電子メールアドレスを素早く抽出できます。

1。「ALT + F11」キーを押すと、「Microsoft Visual Basic for Applications」ウィンドウが起動します。

2。「挿入」>「モジュール」をクリックし、表示されるモジュールウィンドウに次のマクロを貼り付けてください。

VBA:テキスト文字列から電子メールアドレスを抽出するを抽出

Sub ExtractEmail()
'Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = "[A-Za-z0-9._-]"
For i = 1 To UBound(arr, 1)
    For j = 1 To UBound(arr, 2)
        extractStr = arr(i, j)
        outStr = ""
        Index = 1
        Do While True
            Index1 = VBA.InStr(Index, extractStr, "@")
            getStr = ""
            If Index1 > 0 Then
                For p = Index1 - 1 To 1 Step -1
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = Mid(extractStr, p, 1) & getStr
                    Else
                        Exit For
                    End If
                Next
                getStr = getStr & "@"
                For p = Index1 + 1 To Len(extractStr)
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = getStr & Mid(extractStr, p, 1)
                    Else
                        Exit For
                    End If
                Next
                Index = Index1 + 1
                If outStr = "" Then
                    outStr = getStr
                Else
                    outStr = outStr & Chr(10) & getStr
                End If
            Else
                Exit Do
            End If
        Loop
        arr(i, j) = outStr
    Next
Next
WorkRng.Value = arr
End Sub

3。F5 キーを押してこのコードを実行し、表示されるダイアログで VBA を適用したい範囲を選択してください(下のスクリーンショットを参照)。

Excel で VBA を使用してメールアドレスを抽出するための範囲選択を示すスクリーンショット

4。「OK」をクリックすると、選択したテキストからメールアドレスが自動抽出されます。下のスクリーンショットをご確認ください。

VBA を使用してメールアドレスを抽出する前の元のテキストを示すスクリーンショット矢印Excel で VBA コードを使用してメールアドレスを抽出した後の結果を示すスクリーンショット

注意事項:

1。セルにメールアドレスが含まれていない場合、そのセルは空白として表示されます。

2。セル内に複数のメールアドレスが含まれる場合、すべてが抽出されます。

3。抽出されたメールアドレスは元のデータを上書きするため、あらかじめデータのバックアップを取得することをおすすめします。


青色の右向き吹き出し矢印 デモ:Kutools for Excel でテキスト文字列から電子メールアドレスを抽出するを抽出

 
Kutools for Excel:300 個を超える便利なツールがすぐそこへ!AI 搭載の機能で、よりスマートでスピーディーな作業をぜひお楽しみください!今すぐダウンロード!

関連記事:

Excel で複数のメールアドレスからドメインを抽出するには、どうすればよいですか?

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート間 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストをすばやく作成     連動型ドロップダウンリスト     複数選択可能なドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的関数誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)さらに多数
Kutools はお好みの言語でご利用いただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。


Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得