Jak získat e-mailovou adresu odesílatele z jednoho nebo více e-mailů v aplikaci Outlook?
Zkoušeli jste někdy extrahovat e-mailovou adresu z pole „Od“ jednoho nebo více přijatých e-mailů v aplikaci Outlook? Tento článek poskytuje kód VBA, který vám pomůže tento úkol zvládnout.
Získejte e-mailovou adresu odesílatele z jednoho nebo více e-mailů v aplikaci Outlook
Spusťte prosím následující kód VBA a extrahujte e-mailovou adresu z pole „Od“ jednoho nebo více přijatých e-mailů v aplikaci Outlook.
1. Otevřete e-mailovou složku, vyberte e-mailovou zprávu, ze které chcete získat e-mailovou adresu odesílatele. zmáčkni Další + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.
Tipy: Chcete-li vybrat více e-mailů, podržte tlačítko Ctrl a poté vyberte e-maily jeden po druhém.
2. V Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Vložit > Modula poté zkopírujte následující kód VBA do okna Modul (kód).
Kód VBA: extrahujte e-mailovou adresu odesílatele z jednoho nebo více e-mailů v aplikaci 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. cvaknutí Tools > Reference, pak zkontrolujte Microsoft Scripting Runtime pole v Reference – Projekt1 dialogové okno.
4. zmáčkni F5 klíč ke spuštění kódu. Pak Kutools pro aplikaci Outlook Zobrazí se dialogové okno se seznamem všech e-mailových adres odesílatelů vybraných e-mailů.
Tipy:
5. Po kliknutí na tlačítko Ano tlačítko, a Procházet složku objeví se dialogové okno. Vyberte prosím složku pro uložení souboru a klikněte na OK tlačítko.
6. Nakonec a Kutools pro aplikaci Outlook Zobrazí se dialogové okno, které vám sdělí cestu k exportovanému souboru. Klikněte OK zavřít.
7. Přejděte do složky, kde je uložen exportovaný soubor, a otevřete soubor .txt s názvem Adresa zobrazit e-mailové adresy odesílatele vybraných e-mailů.
Kutools pro Outlook - přináší do aplikace Outlook 100 pokročilých funkcí a usnadňuje práci!
- Auto CC / BCC podle pravidel při odesílání e-mailů; Automatické předávání Více e-mailů podle zvyku; Automatická odpověď bez serveru Exchange a dalších automatických funkcí ...
- Varování BCC - zobrazit zprávu, když se pokusíte odpovědět všem pokud je vaše e-mailová adresa v seznamu BCC; Připomenout, když chybí přílohya další připomínající funkce ...
- Odpovědět (Vše) Se všemi přílohami v e-mailové konverzaci; Odpovězte na mnoho e-mailů během několika sekund; Automatické přidání pozdravu při odpovědi; Přidat datum do předmětu ...
- Nástroje pro přílohy: Spravujte všechny přílohy ve všech e-mailech, Automatické odpojení, Komprimovat vše, Přejmenovat vše, Uložit vše ... Rychlá zpráva, Počítat vybrané e-maily...
- Výkonné nevyžádané e-maily podle zvyku; Odeberte duplicitní e-maily a kontakty... Umožní vám dělat chytřejší, rychlejší a lepší v Outlooku.

