Note: The other languages of the website are Google-translated. Back to English

Hur får man avsändarens e-postadress från ett eller flera mejl i Outlook?

Har du någonsin försökt extrahera e-postadressen från "Från"-fältet i ett eller flera mottagna e-postmeddelanden i Outlook? Den här artikeln innehåller en VBA-kod som hjälper dig att hantera den här uppgiften.


Hämta avsändarens e-postadress från ett eller flera e-postmeddelanden i Outlook

Kör följande VBA-kod för att extrahera e-postadressen från "Från"-fältet i ett eller flera mottagna e-postmeddelanden i Outlook.

1. Öppna en e-postmapp, välj ett e-postmeddelande från vilket du vill hämta avsändarens e-postadress. tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

tips: För att välja flera e-postmeddelanden, håll nere ctrl och välj sedan e-postmeddelandena ett i taget.

2. I Microsoft Visual Basic för applikationer fönstret klickar Insert > Modulerna, kopiera sedan följande VBA-kod till fönstret Module (kod).

VBA-kod: extrahera avsändarens e-postadress från ett eller flera e-postmeddelanden i 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. klick verktyg > referenser, kolla sedan på Microsoft Scripting Runtime ruta i Referenser – Projekt1 dialog ruta.

4. tryck på F5 för att köra koden. Då en Kutools för Outlook dialogrutan dyker upp och listar alla avsändarens e-postadresser för de valda e-postmeddelandena.

tips:

Om du behöver exportera adresslistan till en txt-fil, klicka på Ja knapp.
Eller klicka på Nej för att avsluta processen.

5. Efter att ha klickat på Ja knapp, a Bläddra för mapp dialogrutan dyker upp. Välj en mapp för att spara filen och klicka på OK knapp.

6. Slutligen, a Kutools för Outlook dialogrutan dyker upp och talar om sökvägen till den exporterade filen. Klick OK att stänga den.

7. Gå till mappen där den exporterade filen är sparad och öppna .txt-filen med namnet Adress för att se avsändarens e-postadresser för de valda e-postmeddelandena.


Kutools for Outlook - ger 100 avancerade funktioner till Outlook och gör arbetet mycket enklare!

  • Auto CC / BCC enligt regler när du skickar e-post; Automatisk vidarebefordran Flera e-postmeddelanden efter anpassning; Auto-svar utan växelserver och mer automatiska funktioner ...
  • BCC-varning - visa meddelande när du försöker svara på alla om din e-postadress finns i BCC-listan; Påminn när du saknar bilagor, och mer påminna om funktioner ...
  • Svara (alla) med alla bilagor i e-postkonversationen; Svara många e-postmeddelanden inom sekunder; Lägg automatiskt till hälsning när svar Lägg till datum i ämnet ...
  • Bilagverktyg: Hantera alla bilagor i alla e-postmeddelanden, Auto Lossa, Komprimera alla, Byt namn på alla, Spara alla ... Snabbrapport, Räkna valda mejl...
  • Kraftfulla skräppost efter anpassning; Ta bort duplicerade e-postmeddelanden och kontakter... Gör det möjligt för dig att göra smartare, snabbare och bättre i Outlook.
shot kutools outlook kutools flik 1180x121
shot kutools outlook kutools plus flik 1180x121
 
Sortera kommentarer efter
Kommentarer (0)
Inga betyg än. Bli först med att betygsätta!
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser