Skip to main content

Como obter o endereço de email do remetente de um ou mais emails no Outlook?

Author: Siluvia Last Modified: 2025-08-06

Você já tentou extrair o endereço de email do campo "De" de um ou mais emails recebidos no Outlook? Este artigo fornece um código VBA para ajudá-lo a lidar com essa tarefa.


Obtenha o endereço de email do remetente de um ou mais emails no Outlook

Por favor, execute o seguinte código VBA para extrair o endereço de email do campo "De" de um ou mais emails recebidos no Outlook.

1. Abra uma pasta de email, selecione uma mensagem de email da qual você deseja obter o endereço de email do remetente. Pressione as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.

Dica: Para selecionar vários emails, mantenha pressionada a tecla Ctrl e selecione os emails um por um.

2. Na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo, depois copie o seguinte código VBA para a janela Módulo (código).

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

Código VBA: extraia o endereço de email do remetente de um ou mais emails no Outlook

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. Clique em Ferramentas > Referências, depois marque a caixa Microsoft Scripting Runtime na caixa de diálogo Referências – Project1.

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

4. Pressione a tecla F5 para executar o código. Em seguida, uma caixa de diálogo Kutools for Outlook aparecerá, listando todos os endereços de email dos remetentes dos emails selecionados.

Dicas:

Se você precisar exportar a lista de endereços para um arquivo txt, clique no botão Sim.
Ou clique no botão Não para encerrar o processo.
steps on getting the sender’s email address from one or more emails in Outlook

5. Após clicar no botão Sim, uma caixa de diálogo Procurar Pasta aparecerá. Por favor, escolha uma pasta para salvar o arquivo e clique no botão OK.

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

6. Finalmente, uma caixa de diálogo Kutools for Outlook aparecerá, informando o caminho do arquivo exportado. Clique em OK para fechá-la.

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

7. Vá para a pasta onde o arquivo exportado foi salvo e abra o arquivo .txt nomeado Endereços para ver os endereços de email dos remetentes dos emails selecionados.

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

Melhores Ferramentas de Produtividade para Office

Notícia Urgente: Kutools para Outlook lança versão gratuita!

Experimente o novo Kutools para Outlook com mais de100 recursos incríveis! Clique para baixar agora!

🤖 Kutools AI : Utiliza tecnologia avançada de IA para lidar com emails facilmente, incluindo responder, resumir, otimizar, expandir, traduzir e redigir emails.

📧 Automação de Email: Resposta automática (Disponível para POP e IMAP) / Agendar envio de emails / CC/BCC automático por regra ao enviar email / Encaminhamento automático (Regra avançada) / Adicionar saudação automaticamente / Dividir automaticamente emails com vários destinatários em mensagens individuais...

📨 Gerenciamento de Email: Recallar Email / Bloquear emails suspeitos por assunto e outros critérios / Excluir emails duplicados / Pesquisa Avançada / Organizar Pastas...

📁 Anexos Pro: Salvar em lote / Desanexar em lote / Comprimir em lote / Salvar automaticamente / Desanexar automaticamente / Auto Comprimir...

🌟 Interface Mágica: 😊Mais emojis bonitos e divertidos / Aviso de chegada de emails importantes / Minimizar Outlook em vez de fechar...

👍 Praticidade com um clique: Responder a Todos com Anexos / Anti-Phishing Emails / 🕘Exibir fuso horário do remetente...

👩🏼‍🤝‍👩🏻 Contatos & Calendário: Adicionar contatos em lote a partir de emails selecionados / Dividir um grupo de contatos em grupos individuais / Remover lembrete de aniversário...

Use o Kutools no idioma que preferir – compatível com Inglês, Espanhol, Alemão, Francês, Chinês e mais de40 outros!

Desbloqueie instantaneamente o Kutools para Outlook com um clique. Não perca tempo, baixe agora e aumente sua eficiência!

kutools for outlook features1 kutools for outlook features2