皆さん、こんにちは。突然ですが、Outlookで受信したメールや添付ファイルをパソコンに保存したいと思ったことはありませんか?手作業で一つ一つ保存するのは大変ですよね。そこで、今回は初心者の方でも簡単に使える、OutlookのVBA(Visual Basic for Applications)を活用して、メールとその添付ファイルを自動で保存する方法をご紹介します。
VBAって何?Outlookでどう使うの?
まず、VBAとは何かをご説明します。VBAとは、Microsoft Office製品に組み込まれているプログラミング言語で、作業を自動化するために使われます。Excelのマクロで聞いたことがある方もいらっしゃるかもしれませんが、OutlookでもVBAを使って作業を効率化することができるんです。
OutlookでVBAを使ってメールと添付ファイルを保存する手順
では、具体的にどのように設定すれば良いのでしょうか?以下の手順で進めてみましょう。
- 開発タブの表示Outlookを開き、上部の「ファイル」タブをクリックします。次に「オプション」を選択し、「リボンのユーザー設定」をクリックします。右側のリストから「開発」を探し、チェックを入れて「OK」をクリックします。これで、リボンに「開発」タブが表示されます。
- VBAエディタの起動「開発」タブをクリックし、左端にある「Visual Basic」ボタンをクリックします。これでVBAエディタが開きます。
- コードの入力左側の「Project1」というウィンドウ内の「ThisOutlookSession」をダブルクリックします。右側に大きな白いエリアが表示されるので、そこに以下のコードをコピー&ペーストします。
vbaコード
Sub SaveMailAndAttachments()
Dim objMail As Outlook.MailItem
Dim objAttachment As Outlook.Attachment
Dim saveFolder As String
Dim mailSaveName As String
Dim attSaveName As String
Dim dateFormat As String
' 保存先フォルダのパスを指定します。ここではデスクトップ上の「SavedMails」フォルダとしています。
saveFolder = Environ("USERPROFILE") & "\Desktop\SavedMails\"
' フォルダが存在しない場合は作成します。
If Dir(saveFolder, vbDirectory) = "" Then
MkDir saveFolder
End If
' 現在開いているメールアイテムを取得します。
Set objMail = Application.ActiveInspector.CurrentItem
' 日付形式を設定します。
dateFormat = Format(objMail.ReceivedTime, "yyyymmdd_hhmmss")
' メールを保存する際のファイル名を設定します。
mailSaveName = saveFolder & dateFormat & "_" & objMail.Subject & ".msg"
' メールを保存します。
objMail.SaveAs mailSaveName, olMSG
' 添付ファイルがある場合は保存します。
If objMail.Attachments.Count > 0 Then
For Each objAttachment In objMail.Attachments
' 添付ファイルの保存名を設定します。
attSaveName = saveFolder & dateFormat & "_" & objAttachment.FileName
' 添付ファイルを保存します。
objAttachment.SaveAsFile attSaveName
Next
End If
' 終了メッセージを表示します。
MsgBox "メールと添付ファイルの保存が完了しました。", vbInformation
End Sub
このコードは、現在開いているメールとその添付ファイルをデスクトップ上の「SavedMails」フォルダに保存するものです。保存時には、メールの受信日時と件名、添付ファイル名がファイル名に含まれます。
- マクロの実行コードを入力したら、VBAエディタを閉じてOutlookに戻ります。保存したいメールを開き、キーボードの`Alt + F8`を押して「マクロ」ダイアログを表示します。先ほど作成した`SaveMailAndAttachments`を選択し、「実行」をクリックします。これで、メールとその添付ファイルが指定したフォルダに保存されます。
コメント