Как получить информацию о внешнем получателе с помощью VBA / Excel - PullRequest
0 голосов
/ 04 марта 2019

У меня есть список получателей (или адресов электронной почты) в Excel.Есть ли способ получить их данные с помощью Outlook.Application и / или Outlook.MailItem и VBA?

Вот функция, показывающая отдел получателя:

Public Function Get_Department_Name(ByVal Recipient As String)
    Dim obApp As Object
    Dim NewMail As MailItem
    Set obApp = Outlook.Application
    Set NewMail = obApp.CreateItem(olMailItem)    
    With NewMail
         .Subject = "Test Subject"
         .To = Recipient
         .Body = " Body of Message "
    End With
Get_Department_Name  = NewMail.Recipients.Item(1).AddressEntry.Manager().Department

    NewMail.Delete
   Set obApp = Nothing
    Set NewMail = Nothing
End Function

Мне, однако, не удалось получить:

1) Корпоративное звание, например, заместитель директора, вице-президент... и т. д.

2) Сведения об организации, например, "Обслуживание клиентов", "Кадры" ... и т. д.

1 Ответ

0 голосов
/ 05 марта 2019

Эта функция получает необходимый JobTitle / departement, при этом используется метод AddressEntry.GetExchangeUser (Outlook).

Public Function Get_JobTitle(ByVal Recipient As String)
    Dim obApp As Object
    Dim NewMail As MailItem

    Set obApp = Outlook.Application
    Set NewMail = obApp.CreateItem(olMailItem)
    With NewMail
         .Subject = Date & " Test Email"
         .To = Recipient
    End With

Get_JobTitle = NewMail.Recipients.Item(1).AddressEntry.GetExchangeUser.JobTitle
' Can replace JobTitle by  department
    NewMail.Delete
   Set obApp = Nothing
    Set NewMail = Nothing

End Function
...