Свойство MailItem.Sender (Outlook)
Возвращает или задает объект AddressEntry , соответствующий пользователю учетной записи, из которой отправляется MailItem . Для чтения и записи.
Синтаксис
выражение. Sender
Выражение Переменная, представляющая объект MailItem .
Замечания
В сеансе, где в профиле определено несколько учетных записей, можно задать это свойство, чтобы указать учетную запись, из которой будет отправляться почтовый элемент. Задайте для этого свойства объект AddressEntry пользователя, который представлен свойством CurrentUser определенной учетной записи.
Если для свойства Sender задано значение AddressEntry , которое не имеет разрешений на отправку сообщений в этой учетной записи, Microsoft Outlook вызовет ошибку.
Пример
Майкл Бауэр предоставил следующий пример кода. Майкл является самым ценным специалистом Майкрософт с опытом разработки решений Outlook в Visual Basic и Visual Basic для приложений (VBA). Майкл поддерживает профессиональный сайт на VBOffice.net.
В следующем примере кода VBA показано, как отобразить сведения об отправителе сообщения электронной почты. Если отправитель соответствует контакту в адресной книге контактов (CAB) пользователя, в примере кода отображаются сведения об этом контакте в инспекторе. Если отправитель не является контактом в cab-приложении пользователя, в примере кода отображаются сведения из записи адреса пользователя (взятой из контейнера адресной книги поставщика транспорта) в диалоговом окне.
Чтобы отобразить сведения об отправителе, пользователь должен выбрать MailItem в обозревателе. В примере кода также проверяется, был ли отправлен выбранный MailItem , так как свойство Sender определяется только в том случае, если был отправлен mailtem . Затем в примере выполняется доступ к свойству Sender для получения объекта AddressEntry , соответствующего отправителю этого почтового элемента, и отображается контактная информация, если она существует; В противном случае в примере отображаются сведения о вводе адреса.
Public Sub DisplaySenderDetails()
Dim Explorer As Outlook.Explorer
Dim CurrentItem As Object
Dim Sender As Outlook.AddressEntry
Dim Contact As Outlook.ContactItem
Set Explorer = Application.ActiveExplorer
' Check whether any item is selected in the current folder.
If Explorer.Selection.Count Then
' Get the first selected item.
Set CurrentItem = Explorer.Selection(1)
' Check for the type of the selected item as only the
' MailItem object has the Sender property.
If CurrentItem.Class = olMail Then
Set Sender = CurrentItem.Sender
' There is no sender if the item has not been sent yet.
If Sender Is Nothing Then
MsgBox "There's no sender for the current email", vbInformation
Exit Sub
End If
Set Contact = Sender.GetContact
If Not Contact Is Nothing Then
' The sender is stored in the contacts folder,
' so the contact item can be displayed.
Contact.Display
Else
' If the contact cannot be found, display the
' address entry in the properties dialog box.
Sender.Details 0
End If
End If
End If
End Sub
См. также
Создание отправляемого элемента для конкретной учетной записи на основе текущей папки
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.