Как да изпратите поздравително съобщение до контакт автоматично, ако рожденият му ден е днес в Outlook?
Понякога може да искате автоматично да изпратите поздравително съобщение до контакта, когато рожденият му ден е днес в Outlook. Ще бъде досадна работа, когато проверявате рождения ден на контакта един по един и изпращате поздравителните имейли ръчно. В тази статия ще представя VBA код, за да го разреша бързо и лесно.
Изпратете автоматично поздравително съобщение до контакт въз основа на неговия рожден ден с VBA код в Outlook
За да изпратите автоматично поздравително съобщение до контакт, ако неговият рожден ден е днес, първо вмъкнете VBA код, след което трябва да създадете повтаряща се задача, за да задействате кода.
Следните стъпки могат да ви помогнат:
1. Стартирайте Outlook и след това задръжте ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. В Microsoft Visual Basic за приложения прозорец, щракнете два пъти ThisOutlookSession от Проект1(VbaProject.OTM) прозорец, за да отворите режима, и след това копирайте и поставете следния код в празния модул.
VBA код: Автоматично изпращане на поздравително съобщение до контакт въз основа на рожден ден:
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. След това clcik Инструменти > Препратки в Microsoft Visual Basic за приложения прозорец, в изскочил Референции-Проект1 диалогов прозорец, проверете Библиотека с обекти на Microsoft Word намлява Microsoft Scripting Runtime опции от Налични препратки списъчно поле, вижте екранна снимка:
4, След това кликнете OK за да затворите диалоговия прозорец, сега трябва да създадете задача за задействане на VBA кода. Моля, отидете на Task панел, щракнете върху New Task за създаване на задача:
(1.) В Subject ред, трябва да въведете Тема като Изпратете поздравителна поща за рожден ден;
(2.) След това щракнете Повтаряне под Task раздел;
(3.) В Повторение на задачата изберете диалоговия прозорец ежедневно и уточнете на всеки 1 ден(а) опция от Модел на повторение раздел;
5, След това кликнете OK за да затворите диалоговия прозорец, върнете се към прозореца на задачата, моля, задайте напомняне за повтарящата се задача, както е показано на следната екранна снимка:
6. Отсега нататък, когато напомнянето алармира, макросът ще се задейства незабавно. Ще се появи диалогов прозорец, за да ви напомни да вмъкнете поздравите за рожден ден, както е показано на следната екранна снимка:
7, След това кликнете OK бутон, поздравителен имейл ще бъде изпратен автоматично до контакта, чийто рожден ден е днес.
Най-добрите инструменти за продуктивност в офиса
Kutools за Outlook - Над 100 мощни функции, за да заредите вашия Outlook
🤖 AI Mail Assistant: Незабавни професионални имейли с AI магия - с едно щракване до гениални отговори, перфектен тон, многоезично владеене. Трансформирайте имейла без усилие! ...
📧 Автоматизиране на имейли: Извън офиса (налично за POP и IMAP) / График за изпращане на имейли / Автоматично CC/BCC по правила при изпращане на имейл / Автоматично пренасочване (разширени правила) / Автоматично добавяне на поздрав / Автоматично разделяне на имейлите с множество получатели на отделни съобщения ...
📨 Управление на Email: Лесно извикване на имейли / Блокиране на измамни имейли по теми и други / Изтриване на дублирани имейли / подробно търсене / Консолидиране на папки ...
📁 Прикачени файлове Pro: Пакетно запазване / Партидно отделяне / Партиден компрес / Автоматично запазване / Автоматично отделяне / Автоматично компресиране ...
🌟 Магия на интерфейса: 😊 Още красиви и готини емотикони / Увеличете продуктивността на Outlook с изгледи с раздели / Минимизирайте Outlook, вместо да затваряте ...
???? Чудеса с едно кликване: Отговорете на всички с входящи прикачени файлове / Антифишинг имейли / 🕘Показване на часовата зона на подателя ...
👩🏼🤝👩🏻 Контакти и календар: Групово добавяне на контакти от избрани имейли / Разделете група контакти на отделни групи / Премахнете напомнянията за рожден ден ...
Над 100 Характеристики Очаквайте вашето проучване! Щракнете тук, за да откриете повече.