Outlookで誕生日当日の連絡先に挨拶メッセージを自動的に送信するにはどうすればよいですか?
時々、Outlookで連絡先の誕生日が今日の場合、挨拶メッセージを自動的に送信したいと思うかもしれません。連絡先の誕生日を一つずつ確認し、挨拶メールを手動で送信するのは面倒な作業です。この記事では、その問題を迅速かつ簡単に解決するためのVBAコードを紹介します。
OutlookでVBAコードを使用して誕生日に基づいて連絡先に挨拶メッセージを自動送信する
OutlookでVBAコードを使用して誕生日に基づいて連絡先に挨拶メッセージを自動送信する
誕生日が今日の連絡先に挨拶メッセージを自動送信するには、まずVBAコードを挿入し、その後、コードをトリガーするための繰り返しタスクを作成する必要があります。
次の手順が役立つかもしれません:
1. Outlookを起動し、ALT + F11キーを押したままにすると、Microsoft Visual Basic for Applicationsウィンドウが開きます。
2. Microsoft Visual Basic for Applicationsウィンドウで、Project1(VbaProject.OTM)ペインからThisOutlookSessionをダブルクリックしてモジュールを開き、次のコードを空白のモジュールにコピーして貼り付けます。
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. 次に、Microsoft Visual Basic for Applicationsウィンドウで「ツール」>「参照設定」をクリックし、表示された「参照設定-Project1」ダイアログボックスで、「利用可能な参照」リストボックスから「Microsoft Word Object Library」と「Microsoft Scripting Runtime」オプションをチェックします(スクリーンショット参照)。

4. その後、「OK」をクリックしてダイアログを閉じます。次に、VBAコードをトリガーするタスクを作成する必要があります。タスクペインに移動し、「新規タスク」をクリックしてタスクを作成してください。
(1.) 件名行に「Send Birthday Greeting Mail」という件名を入力します。
(2.) 次に、タスクタブの下にある「繰り返し」をクリックします。
(3.) 「タスクの繰り返し」ダイアログボックスで、「毎日」を選択し、「繰り返しパターン」セクションから「1日ごと」オプションを指定します。

5. その後、「 OK」をクリックしてダイアログボックスを閉じ、タスクウィンドウに戻ります。以下のスクリーンショットに示すように、繰り返しタスクのリマインダーを設定してください。

6. 今後、リマインダーが通知されると、マクロが即座にトリガーされます。以下のスクリーンショットに示すように、誕生日の挨拶を挿入するよう促すダイアログボックスが表示されます。

7. 「OK」ボタンをクリックすると、誕生日が今日の連絡先に挨拶メールが自動的に送信されます。
最高のオフィス生産性ツール
最新情報: Kutools for Outlook 無料版リリース!
新しくなった Kutools for Outlook を100以上の素晴らしい機能とともに体験してください!今すぐダウンロードしてみましょう!
🤖 Kutools AI : 高度なAI技術を活用し、メールの返信、要約、最適化、拡張、翻訳、作成までを簡単に処理します。
📧 メール自動化: 自動返信(POPとIMAPに対応) / スケジュール電子メールを送信 /送信時にルールで自動 CC/BCC / 高度なルールによる自動転送 / 挨拶を自動追加 / 複数宛先メールを自動的に一通ずつ分割...
📨 メール管理: メールの取り消し / 件名などで詐欺メールをブロックする / 重複メールを削除 / 高度な検索 / フォルダーを整理...
📁 添付ファイルプロ: 一括保存 / 一括切り離し / 一括圧縮 / 自動保存 / 自動的に切り離す / 自動圧縮...
🌟 インターフェイスマジック: 😊さらに美しくてクールな絵文字 /重要なメール到着時に通知 / Outlookを閉じるのではなくグループを最小化...
👍 ワンクリック便利機能: 全員に【Attachment】付きで返信 / フィッシング対策メール / 🕘送信者のタイムゾーン表示...
👩🏼🤝👩🏻 連絡先&カレンダー: 選択したメールから一括で連絡先を追加 /連絡先グループを個別グループに分割 / 誕生日のリマインダーを削除...
お好みの言語で Kutools を利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上の言語に対応!
Kutools for Outlookをワンクリックですぐに利用開始。待たずに今すぐダウンロードして効率を高めましょう!


🚀 ワンクリックダウンロード — Office用アドインをすべて入手
強くおすすめ: Kutools for Office(5-in-1)
ワンクリックで五つのインストーラーを同時ダウンロード ― Kutools for Excel、Outlook、Word、PowerPoint、Office Tab Pro。 今すぐダウンロード!
- ✅ ワンクリックの便利さ: 五つのセットアップパッケージを一度にダウンロードできます。
- 🚀 あらゆるOffice作業に準備完了: 必要なアドインをいつでもインストール可能です。
- 🧰 含まれるもの: Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint