Ir para o conteúdo principal

 Como enviar uma mensagem de saudação para um contato automaticamente se seu aniversário é hoje no Outlook?

Em algum momento, você pode querer enviar uma mensagem de saudação automaticamente para o contato quando seu aniversário for hoje no Outlook. Será um trabalho tedioso quando você verificar o aniversário do contato um por um e enviar os e-mails de saudação manualmente. Neste artigo, apresentarei um código VBA para resolvê-lo de forma rápida e fácil.

Envie uma mensagem de saudação automaticamente para um contato com base em seu aniversário com o código VBA no Outlook


Envie uma mensagem de saudação automaticamente para um contato com base em seu aniversário com o código VBA no Outlook

Para enviar uma mensagem de saudação automaticamente a um contato se seu aniversário for hoje, insira um código VBA primeiro; em seguida, você precisa criar uma tarefa recorrente para acionar o código.

As etapas a seguir podem ajudá-lo:

1. Inicie o Outlook e mantenha pressionado o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.

2. No Microsoft Visual Basic para Aplicações janela, clique duplo Esta sessão do Outlook do Projeto1 (VbaProject.OTM) painel para abrir o modo e, em seguida, copie e cole o código a seguir no módulo em branco.

Código VBA: enviar automaticamente uma mensagem de saudação a um contato com base no aniversário:

Private Sub Application_Reminder(ByVal Item As Object)
Dim xTempMail As MailItem
Dim xFilePath As String
Dim xItems As Outlook.Items
Dim xItem As Object
Dim xContactItem As Outlook.ContactItem
Dim xTodayDate As String
Dim xBirthdayDate As String
Dim xGreetingMail As Outlook.MailItem
Dim xWordDoc As Word.Document
Dim xGreetings As String
Dim xBool As Boolean
xFilePath = CreateObject("shell.Application").NameSpace(5).self.Path & "\UserTemplates"
Set xFSO = CreateObject("Scripting.FileSystemObject")
If xFSO.FolderExists(xFilePath) = False Then
    MkDir xFilePath
End If
If IsFileExists(xFilePath & "\Birthday Greeting Mail.oft") = False Then
    Set xTempMail = Outlook.CreateItem(olMailItem)
    xTempMail.SaveAs xFilePath & "\Birthday Greeting Mail.oft", olTemplate
    xTempMail.Close olDiscard
End If
If (TypeOf Item Is TaskItem) And (Item.Subject = "Send Birthday Greeting Mail") Then
xGreetings = "Happy Birthday!"
           xGreetings = InputBox("Input birthday greetings", "Kutools for Outlook", xGreetings)
   xTodayDate = Month(Date) & "-" & Day(Date)
   Set xItems = Outlook.Application.Session.GetDefaultFolder(olFolderContacts).Items
   For Each xItem In xItems
       If Not (TypeOf xItem Is ContactItem) Then Exit Sub
       Set xContactItem = xItem
       xBirthdayDate = Month(xContactItem.Birthday) & "-" & Day(xContactItem.Birthday)
       If xBirthdayDate = xTodayDate Then
           Set xGreetingMail = Outlook.Application.CreateItemFromTemplate(xFilePath & "\Birthday Greeting Mail.oft")
           Set xWordDoc = xGreetingMail.GetInspector.WordEditor
           
           xWordDoc.Range.InsertBefore "Dear " & xContactItem.LastName & Chr(10) & xGreetings & Chr(10) & Chr(10)
           With xGreetingMail
                .Recipients.Add (xContactItem.Email1Address)
                .Subject = "Happy Birthday!"
                .Display
                .Close (olSave)
                .Send
          End With
       End If
   Next
End If
End Sub
Function IsFileExists(ByVal FileName As String) As Boolean
Dim xFileSystem As Object
Set xFileSystem = CreateObject("Scripting.FileSystemObject")
If xFileSystem.FileExists(FileName) = True Then
    IsFileExists = True
Else
    IsFileExists = False
End If
End Function 

3. Então clique Ferramentas > Referências no Microsoft Visual Basic para Aplicações janela, no estalou para fora Referências-Projeto1 caixa de diálogo, verifique Biblioteca de objetos do Microsoft Word e Tempo de execução de scripts da Microsoft opções do Referências Disponíveis caixa de lista, veja a captura de tela:

4. Então clique OK para fechar a caixa de diálogo, agora, você deve criar uma tarefa para acionar o código VBA. Por favor vá para o Tarefa painel, clique em nova tarefa para criar uma tarefa:

(1.) Em Assuntolinha t, você deve inserir o assunto como Enviar mensagem de aniversário;

(2.) Em seguida, clique Retorno sob a Tarefa aba;

(3.) No Recorrência de Tarefa caixa de diálogo, selecione Diário e especificar a cada 1 dia (s) opção do Padrão de recorrência seção;

5. Então clique OK para fechar a caixa de diálogo, volte para a janela de tarefas, defina um lembrete para a tarefa recorrente, conforme mostrado a seguir:

6. A partir de agora, quando o lembrete alertar, a macro será acionada imediatamente. Uma caixa de diálogo aparecerá para lembrá-lo de inserir as saudações de aniversário conforme mostrado a seguir:

7. Então clique OK , um e-mail de saudação será enviado ao contato cujo aniversário é hoje automaticamente.


Melhores ferramentas de produtividade de escritório

Kutools for Outlook - Mais de 100 recursos poderosos para turbinar seu Outlook

🤖 Assistente de correio AI: E-mails profissionais instantâneos com magia de IA – um clique para respostas geniais, tom perfeito, domínio multilíngue. Transforme o envio de e-mails sem esforço! ...

📧 Automação de e-mail: Fora do escritório (disponível para POP e IMAP)  /  Agendar envio de e-mails  /  CC/BCC automático por regras ao enviar e-mail  /  Encaminhamento automático (regras avançadas)   /  Adicionar saudação automaticamente   /  Divida automaticamente e-mails de vários destinatários em mensagens individuais ...

📨 Gestão de E-mail: Lembre-se facilmente de e-mails  /  Bloquear e-mails fraudulentos por assuntos e outros  /  Apagar Emails Duplicados  /  Pesquisa Avançada  /  Consolidar pastas ...

📁 Anexos PróSalvar em lote  /  Desanexar lote  /  Comprimir em Lote  /  Salvamento automático   /  Desanexação Automática  /  Compressão automática ...

???? Interface Mágica: 😊Mais emojis bonitos e legais   /  Aumente a produtividade do seu Outlook com visualizações com guias  /  Minimize o Outlook em vez de fechar ...

???? Maravilhas com um clique: Responder a todos com anexos recebidos  /   E-mails antiphishing  /  🕘Mostrar fuso horário do remetente ...

👩🏼‍🤝‍👩🏻 Contatos e calendário: Adicionar contatos em lote de e-mails selecionados  /  Dividir um grupo de contatos em grupos individuais  /  Remover lembretes de aniversário ...

Sobre Características 100 Aguarde sua exploração! Clique aqui para descobrir mais.

 

 

Comments (5)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Good morning,
I've set this up exactly as outlined, I have Kutools installed, however, there's no Macro popup when the reminder activates. What information can I provide you to help me solve this?
This comment was minimized by the moderator on the site
how he come to know who's birthday is today.you not mention, from where he pick detail of the employee.one more thing, i want to send birthday mail to all employee email id.
This comment was minimized by the moderator on the site
I am using this code with outlook 2016. Followed all the steps but kutool popup is not coming as mentioned in last step
This comment was minimized by the moderator on the site
hay alguna forma para mac?
This comment was minimized by the moderator on the site
Buen día, podría indicar cómo el código obtiene y valida la fecha de nacimiento??? . Otra consulta es si funciona para una lista de usuarios. Es decir que valide sus fechas de nacimiento y les envíe automáticamente saludos de cumpleaños. Muchas gracias
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations