#ひとことで
会社への勤怠連絡用に使えるテンプレートを作ってみました。
#概要
勤怠連絡のテンプレートは決まっているので、テンプレート自体は作成していたのですが...
件名や本文に入れていた日付は毎回、手直ししていました。
この日付を編集するのが煩わしかったので、本日日付を自動設定してくれるようなものを作成しました。
#環境
Windows10
Outlook
#手順
##1.メールテンプレート作成
メールを作成して、Outlookテンプレート形式(*.oft)
で保存。
件名のyyyy/mm/dd
と 本文のmm
、dd
部分を置き換えます。
[ファイル] > [名前を付けて保存]
テンプレートファイルの保存場所はマクロ作成時に使うので控えておく。
デフォルトはC:\Users\$ユーザ名\AppData\Roaming\Microsoft\Templates
配下
##2.マクロ作成
Outlook
のVisual Basic
を起動
[開発] > [Visual Basic]
(リボンに開発タブがない場合リボンのユーザ設定
より追加する。)
開発タブ追加手順
`リボンのユーザ設定`は**リボンを右クリック** または **[ファイル] > [オプション]**から遷移可能。 `リボンのユーザ設定`の右側の`開発`チェックボックスを設定済みにする。 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/687030/3630e72f-b591-af84-033f-24e1c924c8e9.png)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/687030/9efd632a-3c18-9c47-404e-412cf3531900.png)Project1.ThisOutlookSession
に以下を入力して、保存。
Sub 遅刻連絡()
Dim MyItem As Outlook.MailItem
Set MyItem = Application.CreateItemFromTemplate("$テンプレート保存場所\【勤怠連絡】山田花子 yyyymmdd 遅刻.oft")
MyItem.Display
' 件名
' yyyy/mm/dd形式
MyItem.Subject = Replace(MyItem.Subject, "yyyy/mm/dd", FormatDateTime(Now, vbShortDate))
' 本文
' mm
MyItem.Body = Replace(MyItem.Body, "mm", Month(Now))
' dd
MyItem.Body = Replace(MyItem.Body, "dd", Day(Now))
End Sub
3.動作確認
**[開発] > [マクロ] > [作成したマクロ]**で実行。
↓できました
4.使いやすくする(おまけ)
いちいち**[開発] > [マクロ]から実行するのが面倒なので、[ホーム]タブの中に追加してみる。
リボンのユーザ設定
より、
①
左側:[コマンドの選択]ドロップダウンよりマクロ**を選択
右側:ホーム(メール)配下に新しいグループ
を追加
②
左側で作成したマクロを選択し、右側で作成したグループに追加
する
③
アイコン・表示名を名前の変更
より変える(変えなくてもいい)
④
[OK]でリボンのユーザ設定
を閉じる
遅刻します ←いました