Propriedade MailItem.Sender (Outlook)

Retorna ou define um objeto AddressEntry que corresponde ao usuário da conta da qual o MailItem é enviado. Leitura/gravação.

Sintaxe

expressão. Sender

expressão Uma variável que representa um objeto MailItem.

Comentários

Em uma sessão onde várias contas são definidas no perfil, é possível definir esta propriedade para especificar a conta da qual será enviado um item de email. Defina essa propriedade para o objeto AddressEntry do usuário representado pela propriedade CurrentUser de uma conta específica.

Se você definir a propriedade Sender como uma AddressEntry que não tenha permissões para enviar mensagens nessa conta, o Microsoft Outlook emitirá um erro.

Exemplo

Michael Bauer forneceu o exemplo de código a seguir. Michael é um Microsoft Most Valuable Professional com experiência no desenvolvimento de soluções do Outlook no Visual Basic e no Visual Basic for Applications (VBA). Michael mantém um site profissional em VBOffice.net.

Os exemplos de código VBA a seguir mostram como exibir os detalhes do remetente de um email. Se o remetente corresponde a um contato no Catálogo de Endereços de Contatos do Outlook (CAB), o exemplo de código exibe as informações sobre esse contato em um inspetor. Se o remetente não é um contato no CAB do usuário, o exemplo de código exibe detalhes da entrada de endereço do usuário (obtidas do contêiner do catálogo de endereços do fornecedor de transporte) em uma caixa de diálogo.

Para exibir informações sobre um remetente, o usuário deveria ter selecionado um MailItem no explorador. O exemplo de código também verifica se o MailItem selecionado foi enviado porque a propriedade Sender só será definida se Mailtem tiver sido enviado. O exemplo depois acessa a propriedade Sender para obter o objeto AddressEntry que corresponde ao remetente desse item de email e exibe as informações de contato, se elas existirem. Caso contrário, o exemplo exibe os detalhes de entrada do endereço.

 
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

Confira também

Objeto MailItem

Como criar um item que possa ser enviado de uma conta específica baseada na pasta atual

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.