コピペで簡単に業務効率化!メールに今日の日付を自動で入力する方法【Outlook VBA】
毎日の日報や報告書っていちいち書くのがめんどくさいですよね。「この作業がなかったらもっと早く帰れるのに…」なんて思ったことはありませんか?
そこで今回は、メールに今日の日付を自動で入力してくれるマクロを紹介していきたいと思います。
今回は日報を例に作成していきますが、さまざまなパターンの日付の表記にも対応できるようなマクロにしてみました。
コピペするだけで簡単にマクロが作成できるので、プログラミング初心者の方もぜひ挑戦してみてください。
01.開発タブの表示【事前準備】
まずはマクロ作成の基本、「開発」タブを表示させていきます。
1)「ファイル」を開いて「オプション」を選択します。
2)「リボンのユーザー設定」を選択し、「開発」にチェックを入れて「OK」をクリックします。
これで「開発」タブが表示されるようになりました。
02.メールテンプレートの作成
ここではメールのテンプレートを作成していきます。
1)普段通りに「新しいメール」から、作成したいメールのテンプレートを作成します。
2)作成したテンプレートを以下の通りに変更してください。
3)「ファイル」をクリックして「名前をつけて保存」を選択します。
4)「ファイル名」を好きな名前に設定して、「ファイルの種類」を「Outlookテンプレート(*.oft)」に変更してから「保存」をクリックします。
⚠️ファイルのパスはマクロを作成する際に使用します。保存した場所を忘れないようにしてください。
これでメールのテンプレートの作成が完了しました。
03.マクロの作成
続いてマクロを作成していきます。
1)「開発」タブを開いて、「マクロ」内の「マクロ」をクリックしてください。
2)「マクロ名」にマクロの内容が分かりやすい名前を入力して「作成」をクリックします。
3)「Microsoft Visual Basic for Applications」の画面が開きます。
4)以下のコードをメモ帳か何かにコピペして、上から3行目の「”★フォルダパス★\テンプレート名.oft”」の部分をメールのテンプレートを格納したフォルダパスとテンプレート名に変更してください。
🌟エクスプローラーでメールのテンプレートを選択した状態で「ホーム」タブ内の「パスのコピー」をクリックすることで一瞬でファイル名までコピーできます。
Dim Temp As Outlook.MailItem
Dim WeekD As String
'テンプレートを開く
Set Temp = Application.CreateItemFromTemplate("★フォルダパス★\テンプレート名.oft")
Temp.Display
'今日の曜日を取得
WeekD = WeekdayName(WeekDay(Date))
'曜日を削除
WeekD = Replace(WeekD, "曜日", "")
'件名を今日の日付に変更
Temp.Subject = Replace(Temp.Subject, "yyyy", Year(Now))
Temp.Subject = Replace(Temp.Subject, "mm", Month(Now))
Temp.Subject = Replace(Temp.Subject, "dd", Day(Now))
Temp.Subject = Replace(Temp.Subject, "(w)", "(" + WeekD + ")")
'本文を今日の日付に変更
Temp.Body = Replace(Temp.Body, "yyyy", Year(Now))
Temp.Body = Replace(Temp.Body, "mm", Month(Now))
Temp.Body = Replace(Temp.Body, "dd", Day(Now))
Temp.Body = Replace(Temp.Body, "(w)", "(" + WeekD + ")")
5)「Sub マクロ名()」と「End Sub」の間に4)で編集したコードをコピー&ペーストします。
6)※2023/05/01 追記
Outlookの操作に必要な参照設定が漏れていました。
「ツール」メニューの中の「参照設定」から「Microsoft Outlook xx.x Object Library」にチェックを入れて「OK」をクリックしてください。
これでマクロの作成が完了しました。この画面は右上のバツをクリックして閉じてしまって問題ありません。
04.タブにマクロを表示
ここでは、作成したマクロを以下のように新規で作成したタブ内に表示していきます。「日報」というアイコンをクリックすることで、今日の日付が入力されたメールのテンプレートが表示されるようになります。
⚠️タブ内に表示したくないという方は、「開発」タブの「マクロ」内からマクロ名をクリックすることで実行が可能です。
⚠️ここでは新規で「テンプレート」タブを作成していきますが、既存のタブ内に追加したい方は必要な部分だけ実施してください。
1)「ファイル」から「オプション」を開きます。
2)「リボンのユーザー設定」を開き、「新しいタブ」を選択します。
3)「新しいタブ(ユーザー設定)」内に作成された「新しいグループ(ユーザー設定)」を選択して「名前の変更」をクリックします。
4)以下の「報告書」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。
5)「新しいタブ(ユーザー設定)」を選択して「名前の変更」をクリックします。
6)「テンプレート」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。
7)「コマンドの選択」から「マクロ」を選択します。
8)マクロを表示したいグループ(ここでいう「報告書」)を選択してから、作成したマクロを選択して「追加」をクリックします。
9)追加されたマクロを選択して「名前の変更」をクリックします。
10)顔のアイコンのところに表示したい「アイコン」を選択して、「日報」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。
11)「OK」をクリックします。
これで「テンプレート」タブ内にマクロを実行するアイコンを表示することができました。アイコンをクリックするとメールのテンプレートが表示されます。
このメールに作業内容を入力して送信すればおしまいです。早く帰宅しましょう。
こんな機能が知りたい!というコメントなどをいただけたらゆくゆく記事にしていくかもしれません☻