Como alterar automaticamente a assinatura com base nos destinatários no Outlook?
Por padrão, o Outlook possui uma função integrada que permite aos usuários alterar automaticamente a assinatura ao enviar e-mails por meio de diferentes contas de e-mail. No entanto, além disso, aqui mostrarei um método para alterar automaticamente a assinatura com base em diferentes destinatários no campo Para no Outlook.
Alterar a assinatura com base nos destinatários automaticamente com código VBA
Alterar a assinatura com base nos destinatários automaticamente com código VBA
Siga os passos abaixo para aplicar diferentes assinaturas aos destinatários correspondentes ao enviar e-mails no Outlook.
1. Primeiro, você precisa desativar o recurso de assinatura anexada automaticamente no Outlook. Por favor, clique em Arquivo > Opções para abrir a janela Opções do Outlook.
2. Na janela Opções do Outlook, selecione Correio no painel esquerdo, depois clique no botão Assinaturas na seção Compor mensagens. Veja a captura de tela:

3. Na caixa de diálogo Assinaturas e Papel de carta, vá para a seção Escolher assinatura padrão sob a aba Assinatura de E-mail, selecione uma conta de e-mail na lista suspensa Conta de e-mail, e escolha (nenhuma) nas listas suspensas Novas mensagens e Respostas/encaminhamentos. Repita esses passos até que todas as contas de e-mail estejam definidas como (nenhuma). Em seguida, clique no botão OK.

Observação: Você também pode criar suas assinaturas necessárias nesta caixa de diálogo Assinaturas e Papel de carta.
4. Clique no botão OK quando retornar à janela Opções do Outlook.
5. Pressione as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.
6. Na janela Microsoft Visual Basic for Applications, clique duas vezes em ThisOutlookSession no painel esquerdo para abrir a janela Código, e copie o seguinte código VBA na janela. Veja a captura de tela:

Código VBA: Alterar automaticamente a assinatura com base nos destinatários no Outlook
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'Updated by ExtendOffice 2022/08/01
Dim xMailItem As MailItem
Dim xRecipients As Recipients
Dim xRecipient As Recipient
Dim xRcpAddress As String
Dim xSignatureFile, xSignaturePath As String
Dim xFSO As Scripting.FileSystemObject
Dim xDoc As Document
Dim xFindStr As String
On Error Resume Next
Set xFSO = New Scripting.FileSystemObject
If Item.Class <> olMail Then Exit Sub
Set xMailItem = Item
Set xRecipients = xMailItem.Recipients
xSignaturePath = CreateObject("WScript.Shell").SpecialFolders(5) + "\Microsoft\Signatures\"
For Each xRecipient In xRecipients
If xRecipient.AddressEntry.AddressEntryUserType = olExchangeUserAddressEntry Then
xRcpAddress = xRecipient.AddressEntry.GetExchangeUser.PrimarySmtpAddress
Else
xRcpAddress = xRecipient.AddressEntry.Address
End If
Select Case xRcpAddress
Case "Email Address 1"
xSignatureFile = xSignaturePath & "aaa.htm"
Exit For
Case "Email Address 2", "Email Address 3"
xSignatureFile = xSignaturePath & "bbb.htm"
Exit For
Case "Email Address 4"
xSignatureFile = xSignaturePath & "ccc.htm"
Exit For
End Select
Next
VBA.DoEvents
Set xDoc = xMailItem.GetInspector.WordEditor
xFindStr = "From: " & xMailItem.Recipients.Item(1).Name & " <" & xRcpAddress & ">"
If VBA.InStr(1, xMailItem.Body, xFindStr) <> 0 Then
xDoc.Application.Selection.HomeKey Unit:=wdStory, Extend:=wdMove
With xDoc.Application.Selection.Find
.ClearFormatting
.Text = xFindStr
.Execute Forward:=True
End With
With xDoc.Application.Selection
.MoveLeft wdCharacter, 2
.InsertParagraphAfter
.MoveDown Unit:=wdLine, Count:=1
End With
Else
With xDoc.Application.Selection
.EndKey Unit:=wdStory, Extend:=wdMove
.InsertParagraphAfter
.MoveDown Unit:=wdLine, Count:=1
End With
End If
xDoc.Application.Selection.InsertFile FileName:=xSignatureFile, Link:=False, Attachment:=False
End Sub
Notas:
- 1). No código VBA, substitua "Endereço de Email 1/2/3/4" pelos respectivos endereços de e-mail dos destinatários.
- 2). "aaa.htm", "bbb.htm" e "ccc.htm" são as assinaturas especificadas que você enviará aos destinatários correspondentes.
- 3). Nesse caso, a assinatura "aaa" será enviada para "Endereço de Email 1", a assinatura "bbb" será enviada para "Endereço de Email 2" e "Endereço de Email 3", e "Endereço de Email 4" receberá o e-mail com a assinatura "ccc". Altere-os conforme necessário.
- 4). Se houver vários destinatários em um e-mail, o código considerará apenas o primeiro destinatário. Nesse caso, os outros destinatários receberão os e-mails com a mesma assinatura do primeiro destinatário.
7. Depois, clique em Ferramentas > Referências para ir à caixa de diálogo Referências-Projeto. Na caixa de diálogo, marque tanto a Biblioteca de Objetos do Microsoft Word quanto as opções de Tempo de Execução de Script do Microsoft, e depois clique no botão OK, veja a captura de tela:

8. Pressione as teclas Alt + Q para fechar a janela Microsoft Visual Basic for Applications.
A partir de agora, após compor um e-mail e clicar no botão Enviar, a assinatura correspondente será inserida automaticamente no final do corpo do e-mail com base no endereço de e-mail do destinatário no campo Para.
Inserir Automaticamente a Data Atual como Assinatura ao Enviar E-mail no Outlook:
Se você deseja inserir uma marca temporal como assinatura no corpo do e-mail ao criar/responder/encaminhar novos e-mails no seu Outlook, você pode habilitar a Adicionar assinatura de data ao criar novo, responder e encaminhar e-mail opção de Kutools para Outlook para alcançar isso. Veja a captura de tela:
Baixe e experimente agora (30-dia de teste grátis)
Melhores Ferramentas de Produtividade para Office
Notícia de Última Hora: Kutools para Outlook Lança Versão Gratuita!
Experimente agora a nova versão GRATUITA do Kutools para Outlook, com mais de70 recursos incríveis para você usar PARA SEMPRE! Clique para baixar agora!
📧 Automação de Email: Resposta automática (Disponível para POP e IMAP) / Agendar envio de emails / CC/BCC automático por Regra ao enviar email / Encaminhamento automático (Regra avançada) / Adicionar saudação automaticamente / Dividir automaticamente emails com múltiplos destinatários em mensagens individuais...
📨 Gerenciamento de Email: Recallar Email / Bloquear emails suspeitos por assunto e outros critérios / Excluir Emails Duplicados / Pesquisa Avançada / Organizar Pastas...
📁 Anexos Pro: Salvar em lote / Desanexar em lote / Comprimir em lote / Salvar automaticamente / Desanexar automaticamente / Auto Comprimir...
🌟 Interface Mágica: 😊Mais emojis bonitos e estilosos / Aviso quando emails importantes chegarem / Minimizar Outlook ao invés de fechar...
👍 Recursos com Um Clique: Responder a Todos com Anexos / Emails Anti-Phishing / 🕘Exibir o fuso horário do remetente...
👩🏼🤝👩🏻 Contatos & Calendário: Adicionar contatos em lote a partir de emails selecionados / Dividir um grupo de contatos em grupos individuais / Remover lembrete de aniversário...

