- 公開日:
- 更新日:
Outlookのマクロでできること
Outlookでメールの作成/管理を行う際、いつも同じ操作を行っていることはありませんか?
Outlookでマクロを作成し、ボタンひとつで実行するようにしておくことで、普段行っている作業の効率化を図ることができます。
本記事では、Outlookでのマクロの作成方法/設定の方法についてご紹介しています。マクロを上手く使いこなして作業時間を短縮させましょう。
OutlookのマクロとVBA
Outlookには、WordやExcelにあるような「マクロを記録」機能はありません。
Outlookで操作を自動化させたい場合や便利な機能を追加したいときは、「VBA」でコードを打ち込む必要があります。
VBAを使えば、メール作成/未読メール取得/メールの管理を自動で行うことが可能になります。
OutlookのVBAの詳細については、以下の記事をご参照ください。
Outlookのマクロを有効にする
Outlookでマクロを有効にするには、あらかじめリボンに開発タブを表示させておく必要があります。
開発タブを表示させる方法については、以下の記事の「開発タブを表示する」セクションをご参照ください。
マクロを有効にする方法は以下のとおりです。

①【開発】タブ、②【マクロのセキュリティ】の順に選択します。

「トラストセンター」ダイアログボックスが表示されます。
マクロを有効にするには、「警告を表示せずにすべてのマクロを無効にする」以外の項目にチェックを入れる必要があります。
今回は例として、①「デジタル署名されたマクロには警告を表示し、その他のマクロはすべて無効にする」に【チェック】を入れ、②【OK】ボタンを押してマクロを有効化させます。
デジタル署名については下記セクションをご覧ください。
デジタル署名
Outlookでマクロを実行しようとすると、下図のようなダイアログボックスが表示されることがあります。

この画面は、Outlookのマクロのセキュリティで「デジタル署名されたマクロには警告を表示し、その他のマクロはすべて無効にする」にチェックを入れた場合に表示されるものです。
この問題はセキュリティレベルを下げることで解決されますが、お勤め先などでマクロのセキュリティレベル変更が認められない場合もあるかと思います。
そういった場合は、「デジタル署名」の設定をすることでエラーの表示が出なくなります。
デジタル証明書の作成/署名の設定方法は以下のとおりです。

①【スタート】ボタンを右クリックし、②【ファイル名を指定して実行】を選択します。

「ファイル名を指定して実行」ダイアログボックスが表示されます。
①「名前」に『C:\Program Files\Microsoft Office\root\Office16』と入力し、②【OK】ボタンを押します。

①【スクロールバー】を下げ、②【SELFCERT】を選択します。

「デジタル証明書の作成」ダイアログボックスが表示されます。
①「証明書の名前」に『名前(例:テスト 太郎)』を入力し、②【OK】ボタンを押します。

「SelfCert 成功」ダイアログボックスが表示されます。
【OK】ボタンを押します。

作成したデジタル署名が正しく機能しているか確認しておきましょう。
①【スタート】ボタンを右クリックし、②【ファイル名を指定して実行】を選択します。

「ファイル名を指定して実行」ダイアログボックスが表示されます。
①「名前」に『certmgr.msc』と入力し、②【OK】ボタンを押します。

「certmgr」ダイアログボックスが表示されます。
①「個人」横の【プルダウンメニュー】、②【証明書】の順に選択すると、先ほど作成したデジタル署名を確認することができます。
OutlookのVBAでデジタル署名の設定を行う方法は以下のとおりです。

①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications」が起動しました。
①【ツール】タブ、②【デジタル署名】の順に選択します。

「デジタル署名」ダイアログボックスが表示されます。
【選択】ボタンを押します。

「Windows セキュリティ」ダイアログボックスが表示されます。
先ほど作成したデジタル署名が表示されますので、【OK】ボタンを押します。

【OK】ボタンを押します。
これでデジタル署名の設定が完了しましたので、マクロ実行の際にエラーが出ることは無くなります。
便利なマクロでできること
Outlookでマクロを使えばメールの作成はもちろんのこと、添付ファイルやメール本体を保存する機能を追加できます。
一度VBAでコードを書いてしまえば、ボタンひとつで一連の操作を行うことができます。
必要なコードや書き方などは以下セクションをご覧ください。
メールを保存する
VBAを使うことで、選択しているメールを.msgとして保存することができます。
この操作を行うことで、メールに添付されたファイルなども保存することが可能になります。
メールをフォルダに保存する方法については、以下のとおりです。

①【受信トレイ】、②【保存したいメール】の順に選択します。

①【開発】タブ、②【Visual Basic】の順に選択します。

①以下のコードを入力します。
Sub SaveMail()
'選択しているメールを抽出
Dim getObject As Outlook.Selection
Dim myItem As Object
Set getObject = Outlook.Application.ActiveExplorer.Selection
Set myItem = getObject.Item(1)
Dim desktop As Object
Dim strSaveRoot As String
Set desktop = CreateObject("WScript.Shell")
strSaveRoot = desktop.SpecialFolders(4) & "\"
'フォルダ名を入力する
Dim FileName As String
FileName = InputBox("フォルダ名を入力してください", "Outlook メールフォルダの作成", "無名のフォルダ")
If StrPtr(FileName) = 0 Then Exit Sub
'作成したフォルダにメールを保存する
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CreateFolder strSaveRoot & FileName
myItem.SaveAs strSaveRoot & FileName & "\" & FileName & ".msg"
Set getObject = Nothing
Set myItem = Nothing
Set desktop = Nothing
Set fso = Nothing
End Sub
②【マクロを実行】を選択します。

「Outlook メールフォルダの作成」ダイアログボックスが表示されます。
①「フォルダ名を入力してください」に『任意のフォルダ名(例:無名のフォルダ1)』を入力し、②【OK】ボタンを押します。

デスクトップに先ほどのフォルダが保存されていますので、【メールが保存されたフォルダ】をダブルクリックします。

「エクスプローラー」が起動します。
【メール】をダブルクリックします。

これで、メールがフォルダに保存されたことが確認できました。
マクロの設定方法
マクロを設定するには新たにマクロタブを作成し、その中にマクロを実行するボタンを作成する必要があります。
マクロの設定方法については、以下のとおりです。

【ファイル】タブを選択します。

【オプション】タブを選択します。

「Outlook のオプション」ダイアログボックスが表示されます。
①【リボンのユーザー設定】タブを選択し、②【新しいタブ】ボタンを押します。

新しいタブが追加されました。
①【コマンドの選択】、②【マクロ】の順に選択します。

①【タブに追加したいマクロ(例:Project1.SaveMail)】を選択し、②【追加】ボタンを押します。

作成したタブ/グループ/マクロに名前をつけていきます。
①【新しいタブ(ユーザー設定)】を選択し、②【名前の変更】ボタンを押します。

「名前の変更」ダイアログボックスが表示されました。
①「表示名」に『タブの表示名(例:マクロ)』を入力し、②【OK】ボタンを押します。

タブの表示名が変更されました。
同じ要領で、①【新しいグループ(ユーザー設定)】を選択し、②【名前の変更】ボタンを押します。

「名前の変更」ダイアログボックスが表示されました。
①「アイコン」から【任意のアイコン】を選択し、②「表示名」に『グループの名前(例:メール保存関連)』を入力し、③【OK】ボタンを押します。

マクロにも名前を付けます。①【マクロ(例:Project1.SaveMail)】を選択し、②【名前の変更】ボタンを押します。

「名前の変更」ダイアログボックスが表示されました。
①「アイコン」から【任意のアイコン】を選択し、②「表示名」に『マクロの名前(例:メール保存)』を入力し、③【OK】ボタンを押します。

【OK】ボタンを押します。

【作成したタブ(例:マクロ)】を選択すると、追加したマクロがボタンとして表示されていることが確認できます。
上記の手順でマクロをタブに追加しておけば、ボタンひとつでマクロを実行できるようになりますのでお試しください。
マクロを削除する
マクロを削除する方法については、以下のとおりです。

①【開発】タブ、②【マクロ】、③【マクロ】の順に選択します。

「マクロ」ダイアログボックスが表示されます。
①【削除したいマクロ(例:MailInfo)】を選択し、②【削除】ボタンを押します。

「Microsoft Outlook」ダイアログボックスが表示されます。
【はい】ボタンを押します。

先ほど選択したマクロが削除されました。
マクロが動かない場合
マクロを実行しようとしてもエラーが出て動かない場合は、デジタル証明書を設定することで問題が解決する可能性があります。
デジタル証明書の作成/署名の設定方法については、本記事の「デジタル署名」セクションをご参照ください。