Direkt zum Inhalt

 Wie sende ich automatisch eine Begrüßungsnachricht an einen Kontakt, wenn er heute in Outlook Geburtstag hat?

Manchmal möchten Sie möglicherweise automatisch eine Begrüßungsnachricht an den Kontakt senden, wenn er heute in Outlook Geburtstag hat. Es ist eine mühsame Aufgabe, wenn Sie nacheinander den Geburtstag des Kontakts überprüfen und die Begrüßungs-E-Mails manuell senden. In diesem Artikel werde ich einen VBA-Code vorstellen, um ihn schnell und einfach zu lösen.

Senden Sie automatisch eine Begrüßungsnachricht an einen Kontakt basierend auf seinem Geburtstag mit VBA-Code in Outlook


Senden Sie automatisch eine Begrüßungsnachricht an einen Kontakt basierend auf seinem Geburtstag mit VBA-Code in Outlook

Um eine Begrüßungsnachricht automatisch an einen Kontakt zu senden, wenn er heute Geburtstag hat, geben Sie zuerst einen VBA-Code ein. Anschließend müssen Sie eine wiederkehrende Aufgabe erstellen, um den Code auszulösen.

Die folgenden Schritte können Ihnen helfen:

1. Starten Sie Outlook und halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. In dem Microsoft Visual Basic für Applikationen Fenster, Doppelklick DieseOutlookSession von dem Projekt1 (VbaProject.OTM) Bereich, um den Modus zu öffnen, und kopieren Sie dann den folgenden Code und fügen Sie ihn in das leere Modul ein.

VBA-Code: Automatisch eine Begrüßungsnachricht an einen Kontakt senden, basierend auf dem Geburtstag:

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. Dann klicken Tools > Bibliographie der Microsoft Visual Basic für Applikationen Fenster, in dem heraussprang Referenzen-Projekt1 Dialogfeld überprüfen Microsoft Word-Objektbibliothek und Microsoft Scripting-Laufzeit Optionen aus dem Verfügbare Referenzen Listenfeld, siehe Screenshot:

4. Dann klick OK Um den Dialog zu schließen, sollten Sie nun eine Aufgabe erstellen, um den VBA-Code auszulösen. Bitte gehen Sie zu Aufgabe Bereich, klicken Sie auf Neue Aufgabe So erstellen Sie eine Aufgabe:

(1 in BetreffGeben Sie in der Zeile „Betreff als“ ein Senden Sie eine Geburtstagsgruß-Mail;

(2.) Klicken Sie dann auf Wiederholung unter dem Aufgabe Tab;

(3.) In der Wiederholung der Aufgabe Dialogfeld auswählen Daily und angeben alle 1 Tag(e) Option von der Wiederholungsmuster Sektion;

5. Dann klick OK Um das Dialogfeld zu schließen, zum Aufgabenfenster zurückzukehren, legen Sie bitte eine Erinnerung für die wiederkehrende Aufgabe fest, wie im folgenden Screenshot gezeigt:

6. Von nun an wird das Makro sofort ausgelöst, wenn die Erinnerung ertönt. Es erscheint ein Dialogfeld, das Sie daran erinnert, die Geburtstagsgrüße einzufügen, wie im folgenden Screenshot gezeigt:

7. Dann klick OK Wenn Sie auf die Schaltfläche klicken, wird automatisch eine Begrüßungsmail an den Kontakt gesendet, der heute Geburtstag hat.


Beste Office-Produktivitätstools

Kutools for Outlook - Über 100 leistungsstarke Funktionen zur Optimierung Ihres Outlooks

🤖 KI-Mail-Assistent: Sofortige Profi-E-Mails mit KI-Magie – geniale Antworten mit einem Klick, perfekter Ton, mehrsprachige Beherrschung. Verwandeln Sie den E-Mail-Versand mühelos! ...

📧 E-Mail Automation: Abwesenheit (verfügbar für POP und IMAP)  /  Planen Sie das Senden von E-Mails  /  Automatisches CC/BCC nach Regeln beim E-Mail-Versand  /  Automatische Weiterleitung (erweiterte Regeln)   /  Begrüßung automatisch hinzufügen   /  Teilen Sie E-Mails mit mehreren Empfängern automatisch in einzelne Nachrichten auf ...

📨 E-Mail-Management: E-Mails einfach abrufen  /  Blockieren Sie betrügerische E-Mails nach Betreff und anderen  /  Doppelte E-Mails löschen  /  Erweiterte Suche  /  Ordner konsolidieren ...

📁 Anhänge ProBatch speichern  /  Stapeltrennung  /  Stapelkomprimierung  /  Automatisches Speichern   /  Automatische Trennung  /  Automatische Komprimierung ...

???? Schnittstellenmagie: 😊Mehr hübsche und coole Emojis   /  Steigern Sie Ihre Outlook-Produktivität mit Registerkartenansichten  /  Ausblick minimieren statt schließen ...

👍 Wunder mit einem Klick: Allen mit eingehenden Anhängen antworten  /   Anti-Phishing-E-Mails  /  🕘Zeitzone des Absenders anzeigen ...

👩🏼‍🤝‍👩🏻 Kontakte und Kalender: Fügen Sie Kontakte aus ausgewählten E-Mails im Stapel hinzu  /  Teilen Sie eine Kontaktgruppe in einzelne Gruppen auf  /  Geburtstagserinnerungen entfernen ...

Auf über 100 Eigenschaften Warten Sie auf Ihre Erkundung! Klicken Sie hier, um mehr zu erfahren.

 

 

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