Ir para o conteúdo principal

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

Autor: Xiao Yang Última modificação: 2024-08-19

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 
a captura de tela da etapa sobre como usar o vba para enviar uma mensagem de saudação a um contato automaticamente se o aniversário dele for hoje no Outlook 1

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

Notícias de última hora: lançamento do Kutools para Outlook Free Version!

Experimente o novo Kutools para Outlook Versão GRATUITA com mais de 70 recursos incríveis, para você usar PARA SEMPRE! Clique para baixar agora!

🤖 Kutools IA : Usa tecnologia avançada de IA para lidar com e-mails sem esforço, incluindo responder, resumir, otimizar, estender, traduzir e redigir e-mails.

📧 Automação de e-mail: Resposta automática (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: Recuperar e-mails  /  Bloquear e-mails fraudulentos por assuntos e outros  /  Apagar Emails Duplicados  /  Advanced Search  /  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   /  Lembrá-lo quando e-mails importantes chegarem  /  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 ...

Desbloqueie instantaneamente o Kutools para Outlook com um único clique—permanentemente gratuito. Não espere, baixe agora e aumente sua eficiência!

kutools para recursos do Outlook1 kutools para recursos do Outlook2