メインコンテンツへスキップ
 

OutlookのXNUMXつ以上の電子メールから送信者の電子メールアドレスを取得するにはどうすればよいですか?

作者: シルヴィア 最終更新日:2024年09月13日

Have you ever tried to extract the email address from the "From" field of one or more received emails in Outlook? This article provides a VBA code to help you handle this task.


OutlookのXNUMXつ以上の電子メールから送信者の電子メールアドレスを取得します

Please run the following VBA code to extract the email address from the "From" field of one or more received emails in Outlook.

1.電子メールフォルダを開き、送信者の電子メールアドレスを取得する電子メールメッセージを選択します。 を押します 他の + F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。

ヒント:複数のメールを選択するには、 Ctrlキー キーを押してから、メールをXNUMXつずつ選択します。

2。 の中に アプリケーション向け Microsoft Visual Basic ウィンドウ、クリック インセット > モジュール次に、次のVBAコードを[モジュール(コード)]ウィンドウにコピーします。

steps on getting the sender’s email address from one or more emails in Outlook

VBAコード:OutlookのXNUMXつ以上の電子メールから送信者の電子メールアドレスを抽出します

Sub GetSmtpAddressOfSelectionEmail()
  Dim xExplorer As Explorer
  Dim xSelection As Selection
  Dim xItem As Object
  Dim xMail As MailItem
  Dim xAddress As String
  Dim xFldObj As Object
  Dim FilePath As String
  Dim xFSO As Scripting.FileSystemObject
  On Error Resume Next
  Set xExplorer = Application.ActiveExplorer
  Set xSelection = xExplorer.Selection
  For Each xItem In xSelection
    If xItem.Class = olMail Then
      Set xMail = xItem
      xAddress = xAddress & VBA.vbCrLf & "  " & GetSmtpAddress(xMail)
    End If
  Next
  If MsgBox("Sender SMTP Address is: " & xAddress & vbCrLf & vbCrLf & "Do you want to export the address list to a txt file? ", vbYesNo, "Kutools for Outlook") = vbYes Then
    Set xFldObj = CreateObject("Shell.Application").BrowseforFolder(0, "Select a Folder", 0, 16)
    Set xFSO = New Scripting.FileSystemObject
    If xFldObj Is Nothing Then Exit Sub
    FilePath = xFldObj.Items.Item.Path & "\Address.txt"
    Close #1
    Open FilePath For Output As #1
    Print #1, "Sender SMTP Address is: " & xAddress
    Close #1
    Set xFSO = Nothing
    Set xFldObj = Nothing
    MsgBox "Address list has been exported to:" & FilePath, vbOKOnly + vbInformation, "Kutools for Outlook"
  End If
End Sub
Function GetSmtpAddress(Mail As MailItem)
  Dim xNameSpace As Outlook.NameSpace
  Dim xEntryID As String
  Dim xAddressEntry As AddressEntry
  Dim PR_SENT_REPRESENTING_ENTRYID As String
  Dim PR_SMTP_ADDRESS As String
  Dim xExchangeUser As exchangeUser
  On Error Resume Next
  GetSmtpAddress = ""
  Set xNameSpace = Application.Session
  If Mail.sender.Type <> "EX" Then
    GetSmtpAddress = Mail.sender.Address
  Else
    PR_SENT_REPRESENTING_ENTRYID = "http://schemas.microsoft.com/mapi/proptag/0x00410102"
    xEntryID = Mail.PropertyAccessor.BinaryToString(Mail.PropertyAccessor.GetProperty(PR_SENT_REPRESENTING_ENTRYID))
    Set xAddressEntry = xNameSpace.GetAddressEntryFromID(xEntryID)
    If xAddressEntry Is Nothing Then Exit Function
    If xAddressEntry.AddressEntryUserType = olExchangeUserAddressEntry Or xAddressEntry.AddressEntryUserType = olExchangeRemoteUserAddressEntry Then
      Set xExchangeUser = xAddressEntry.GetExchangeUser()
      If xExchangeUser Is Nothing Then Exit Function
      GetSmtpAddress = xExchangeUser.PrimarySmtpAddress
    Else
      PR_SMTP_ADDRESS = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
      GetSmtpAddress = xAddressEntry.PropertyAccessor.GetProperty(PR_SMTP_ADDRESS)
    End If
  End If
End Function

3。 クリック ツール > 参考情報、次に Microsoftスクリプトランタイム 内箱 参照– Project1 ダイアログボックス。

steps on getting the sender’s email address from one or more emails in Outlook

4。 プレス F5 コードを実行するためのキー。 次に、 Kutools for Outlook ダイアログボックスが表示され、選択した電子メールのすべての送信者の電子メールアドレスが一覧表示されます。

ヒント:

アドレスリストをtxtファイルにエクスポートする必要がある場合は、[
またはをクリックします いいえ プロセスを終了するボタン。
steps on getting the sender’s email address from one or more emails in Outlook

5。 をクリックすると ボタン、 フォルダを参照 ダイアログボックスが表示されます。 ファイルを保存するフォルダを選択して、 OK

steps on getting the sender’s email address from one or more emails in Outlook

6.最後に、 Kutools for Outlook ダイアログボックスがポップアップ表示され、エクスポートされたファイルのパスが示されます。 クリック OK それを閉じる。

steps on getting the sender’s email address from one or more emails in Outlook

7.エクスポートされたファイルが保存されているフォルダーに移動し、次の名前の.txtファイルを開きます。 住所 選択したメールの送信者のメールアドレスを確認します。

steps on getting the sender’s email address from one or more emails in Outlook

最高のオフィス生産性向上ツール

速報: Outlook 向け Kutools がリリース 無償版!

まったく新しいKutools for Outlookを体験してください 70以上の素晴らしい機能を備えた無料版を永久にご利用いただけます! 今すぐダウンロードするにはクリックしてください!

🤖 クツールAI : 高度な AI テクノロジーを使用して、メールの返信、要約、最適化、拡張、翻訳、作成など、メールを簡単に処理します。

📧 自動メール: 自動返信(POP および IMAP で利用可能)  /  メール送信のスケジュール設定  /  メール送信時のルールによる自動CC/BCC  /  自動転送 (高度なルール)   /  あいさつを自動追加   /  複数受信者の電子メールを個別のメッセージに自動的に分割する ...

📨 電子メール管理: メールの取り消し  /  件名などで詐欺メールをブロック  /  重複するメールを削除する  /  高度な検索  /  フォルダーを統合する ...

📁 アタッチメント プロバッチ保存  /  バッチデタッチ  /  バッチ圧縮  /  自動保存   /  自動デタッチ  /  自動圧縮 ...

🌟 インターフェースマジック: 😊もっと可愛くてクールな絵文字   /  重要なメールが届いたら通知する  /  Outlook を閉じる代わりに最小化する ...

???? ワンクリックの驚異: 受信した添付ファイルをすべてに返信する  /   フィッシングメール対策  /  🕘送信者のタイムゾーンを表示 ...

👩🏼‍🤝‍👩🏻 連絡先とカレンダー: 選択したメールから連絡先を一括追加  /  連絡先グループを個別のグループに分割する  /  誕生日のリマインダーを削除する ...

ワンクリックでKutools for Outlookを即座にロック解除—永久に無料待たずに今すぐダウンロードして効率を高めましょう!

Outlook 用の kutools の機能 1 Outlook 用の kutools の機能 2