見出し画像

コピペで簡単に業務効率化!メールに今日の日付を自動で入力する方法【Outlook VBA】

毎日の日報や報告書っていちいち書くのがめんどくさいですよね。「この作業がなかったらもっと早く帰れるのに…」なんて思ったことはありませんか?

そこで今回は、メールに今日の日付を自動で入力してくれるマクロを紹介していきたいと思います。

今回は日報を例に作成していきますが、さまざまなパターンの日付の表記にも対応できるようなマクロにしてみました。

コピペするだけで簡単にマクロが作成できるので、プログラミング初心者の方もぜひ挑戦してみてください。

01.開発タブの表示【事前準備】

まずはマクロ作成の基本、「開発」タブを表示させていきます。

1)「ファイル」を開いて「オプション」を選択します。

01_ファイル-オプションを押す

2)「リボンのユーザー設定」を選択し、「開発」にチェックを入れて「OK」をクリックします。

02_開発にチェック

これで「開発」タブが表示されるようになりました。

02.メールテンプレートの作成

ここではメールのテンプレートを作成していきます。

1)普段通りに「新しいメール」から、作成したいメールのテンプレートを作成します。

03_テンプレ作成

2)作成したテンプレートを以下の通りに変更してください。

①署名をデフォルトで設定している場合は署名を削除
②日付を以下の対応する文字列に変更
 西暦     →  yyyy
 月   →  mm
 日にち →  dd
 曜日  →  (w)

04_テンプレ編集

3)「ファイル」をクリックして「名前をつけて保存」を選択します。

05_名前を付けて保存まで

4)「ファイル名」を好きな名前に設定して、「ファイルの種類」を「Outlookテンプレート(*.oft)」に変更してから「保存」をクリックします。

⚠️ファイルのパスはマクロを作成する際に使用します。保存した場所を忘れないようにしてください。

06_名前を付けて保存

これでメールのテンプレートの作成が完了しました。

03.マクロの作成

続いてマクロを作成していきます。

1)「開発」タブを開いて、「マクロ」内の「マクロ」をクリックしてください。

07_マクロを開く

2)「マクロ名」にマクロの内容が分かりやすい名前を入力して「作成」をクリックします。

08_マクロ名をつけて作成

3)「Microsoft Visual Basic for Applications」の画面が開きます。

画像9

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)で編集したコードをコピー&ペーストします。

10_マクロコピペ

6)※2023/05/01 追記
  Outlookの操作に必要な参照設定が漏れていました。
 「ツール」メニューの中の「参照設定」から「Microsoft Outlook xx.x Object Library」にチェックを入れて「OK」をクリックしてください。


これでマクロの作成が完了しました。この画面は右上のバツをクリックして閉じてしまって問題ありません。

04.タブにマクロを表示

ここでは、作成したマクロを以下のように新規で作成したタブ内に表示していきます。「日報」というアイコンをクリックすることで、今日の日付が入力されたメールのテンプレートが表示されるようになります。

22_テンプレート

⚠️タブ内に表示したくないという方は、「開発」タブの「マクロ」内からマクロ名をクリックすることで実行が可能です。

⚠️ここでは新規で「テンプレート」タブを作成していきますが、既存のタブ内に追加したい方は必要な部分だけ実施してください。

1)「ファイル」から「オプション」を開きます。

11_ファイル-オプションを押す

2)「リボンのユーザー設定」を開き、「新しいタブ」を選択します。

12_新しいタブ

3)「新しいタブ(ユーザー設定)」内に作成された「新しいグループ(ユーザー設定)」を選択して「名前の変更」をクリックします。

13_タブの名前の変更

4)以下の「報告書」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。

22_テンプレート
14_タブの名前の変更

5)「新しいタブ(ユーザー設定)」を選択して「名前の変更」をクリックします。

15_大タブの名前の変更

6)「テンプレート」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。

22_テンプレート
16_大タブの名前の変更

7)「コマンドの選択」から「マクロ」を選択します。

17_コマンドでマクロ選択

8)マクロを表示したいグループ(ここでいう「報告書」)を選択してから、作成したマクロを選択して「追加」をクリックします。

18_マクロを追加

9)追加されたマクロを選択して「名前の変更」をクリックします。

19_マクロ名前の変更

10)顔のアイコンのところに表示したい「アイコン」を選択して、「日報」と表示されている部分に表示したい文字を「表示名」に入力して「OK」をクリックします。

22_テンプレート
20_マクロ名前の変更

11)「OK」をクリックします。

21_タブ編集終了

これで「テンプレート」タブ内にマクロを実行するアイコンを表示することができました。アイコンをクリックするとメールのテンプレートが表示されます。

23_メールが開く

このメールに作業内容を入力して送信すればおしまいです。早く帰宅しましょう。

こんな機能が知りたい!というコメントなどをいただけたらゆくゆく記事にしていくかもしれません☻