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 > Referensprojekt, 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:
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.
Bästa kontorsproduktivitetsverktyg
Nyheter: Kutools för Outlook lanseras Gratis version!
Upplev de helt nya Kutools för Outlook GRATIS version med 70+ otroliga funktioner, din att använda FÖR EVIGT! Klicka för att ladda ner nu!
📧 Email Automation: Autosvar (tillgängligt för POP och IMAP) / Schemalägg Skicka e-post / Auto CC/BCC enligt regler när du skickar e-post / Automatisk vidarebefordran (avancerade regler) / Lägg automatiskt till hälsning / Dela automatiskt e-postmeddelanden med flera mottagare i individuella meddelanden ...
📨 Email Management: Återkalla e-postmeddelanden / Blockera bluff-e-postmeddelanden av ämnen och andra / Ta bort duplicerade e-postmeddelanden / Avancerad Sökning / Konsolidera mappar ...
📁 Bilagor Pro: Batch Spara / Batch lossa / Batchkomprimera / Automatisk sparning / Auto Lossa / Automatisk komprimering ...
🌟 Gränssnittsmagi: 😊 Fler vackra och coola emojis / Påminn dig när viktiga mejl kommer / Minimera Outlook istället för att stänga ...
👍 Underverk med ett klick: Svara alla med inkommande bilagor / E-postmeddelanden mot nätfiske / 🕘Visa avsändarens tidszon ...
👩🏼🤝👩🏻 Kontakter och kalender: Lägg till kontakter i grupp från valda e-postmeddelanden / Dela upp en kontaktgrupp till individuella grupper / Ta bort påminnelser om födelsedag ...