本記事ではこういった疑問に答えます
・アウトルックでメール返信しようとすると元のメールに添付されていた文書が消える。添付したまま返信する方法ないの?
本記事の内容
・メール返信、全返信のときに添付文書を削除せずに返信する方法を教えます。
この記事を書いているのは
面倒なことがキライでいつも楽にする方法や生産性を上げる方法を追求した結果、残業なし生活を達成。
そんな私が日頃使ってて、本当に役立つ便利な機能だけを紹介します。
ちなみにアウトルック利用歴は10年以上。
Outlook 添付を付けたまま返信する方法【簡単】
こんにちは!読書と実践が大好きなSE「つた」です。
Outlookは返信の時に添付が消える!?
Outlookを使っていて不満なのは、メールを「返信」するときに添付文書が消えてしまうことです。
ネットで添付文書を付けたまま返信する方法を探しましたが、どうやらそのような機能はないようです。
仕方ないのでOutlookのマクロで添付を付けたまま返信する
機能を実現しましたのでシェアしたいと思います。
手順どおりコピペするだけで10分ぐらいで簡単に終わります。
一度設定するだけで、今後ずっと楽になりますので、ぜひどうぞ。
やり方
マクロをコピペで登録
①Outlook を起動
②Alt+F11 キーを押し、Visual Basic Editor を起動
③「Project1」 を右クリックし、「挿入」⇒「標準モジュール」を選択
④標準モジュールを展開して、Module1をダブルクリック
⑤以下のコードをコピーして、Module1に貼りつけて保存
***この下をコピペしてください***
Public Sub ReplyAllWithAttachments()
Dim objItem As MailItem
Dim objReply As MailItem
Dim objForward As MailItem
Dim recSrc As Recipient
Dim recDst As Recipient
‘
If TypeName(ActiveWindow) = “Inspector” Then
Set objItem = ActiveInspector.CurrentItem
Else
Set objItem = ActiveExplorer.Selection(1)
End If
‘ 転送メールと返信メールを作成
Set objForward = objItem.Forward
Set objReply = objItem.ReplyAll
‘ 転送メールの件名を返信にする
objForward = objReply.Subject
‘ 転送メールの宛先に返信メールの宛先を指定
For Each recSrc In objReply.Recipients
strAddress = recSrc.Address
If recSrc.AddressEntry.Type = “SMTP” Then
strAddress = “””” & recSrc.Name & “”” < ” & recSrc.Address & ” > ”
End If
Set recDst = objForward.Recipients.Add(strAddress)
recDst.Type = recSrc.Type
recDst.Resolve
Next
objReply.Close olDiscard
objForward.Display
End Sub
Public Sub ReplyWithAttachments()
Dim objItem As MailItem
Dim objReply As MailItem
Dim objForward As MailItem
Dim recSrc As Recipient
Dim recDst As Recipient
‘
If TypeName(ActiveWindow) = “Inspector” Then
Set objItem = ActiveInspector.CurrentItem
Else
Set objItem = ActiveExplorer.Selection(1)
End If
‘ 転送メールと返信メールを作成
Set objForward = objItem.Forward
Set objReply = objItem.Reply
‘ 転送メールの件名を返信にする
objForward = objReply.Subject
‘ 転送メールの宛先に返信メールの宛先を指定
For Each recSrc In objReply.Recipients
strAddress = recSrc.Address
If recSrc.AddressEntry.Type = “SMTP” Then
strAddress = “””” & recSrc.Name & “”” < ” & recSrc.Address & ” > “
End If
Set recDst = objForward.Recipients.Add(strAddress)
recDst.Type = recSrc.Type
recDst.Resolve
Next
objReply.Close olDiscard
objForward.Display
End Sub
***この上までコピペ***
一応マクロの中でやってることを下記に書いておきますが、興味のない人は読まなくてOK!
【マクロがやっていること】
Outlookの仕様で「転送」の場合は添付文書が削除されないため、
メールを「転送」で作成した後に、今回作成するメールの宛先を元のメールから取得
作ったマクロを実行するボタンを追加
①リボンの▼をクリックし、「その他のコマンド」をクリック「リボンのユーザ設定を選択」
②「コマンドの選択」 の下のドロップダウンから 「マクロ」 を選択
③下のリストボックスにマクロの一覧が表示されるので、上記で追加したマクロ
(Project1. ReplyAllWithAttachments) を選択
④右に表示されるリボンのタブのうち、マクロを追加したいタブを選択し、「追加」をクリック
⑤必要に応じて 「名前の変更」 をクリックしてグループの名前やアイコンを変更
※私の場合は単純にカテゴリは「添付付き」、名前は「全返信」と変更しました
⑥上記に③〜⑤ついて「Project1.ReplyWithAttachments」も同様に実施
⑦「OK」 をクリックするとボタンが追加されます
※Project1. ReplyAllWithAttachments:全員に返信(添付あり)
※Project1.ReplyWithAttachments:返信(添付あり)
最後にマクロの設定
①ファイルの「オプション」をクリック
②「セキュリティセンター」の「セキュリティセンターの設定」をクリック
③「マクロの設定」から「すべてのマクロに対して警告を表示する」または「すべてのマクロを有効にする」を選択
※「すべてのマクロに対して警告を表示する」を選択した場合は、Outlookを起動して1回目に使用するときに「セキュリティに影響を及ぼす可能性のある問題点が検出されました」を警告が出ますが気にせず「マクロを有効にする」を選択してください。
④OUTLOOKを再起動する
準備は以上で完了です。早速使ってみましょう!
使い方
①添付付きメールを開いて、先ほど追加したボタンを押します。
②無事、添付が付いた状態で返信メール作成画面が表示されました。
お疲れさまでした!!
まとめ
いかがでしたか?
一度登録すると、メールを出す都度の手間が減りますので間違いなく生産性向上しますのでぜひどうぞ!
アウトルックには色々な機能があります。
でもその中でホントに使える機能は一部だと思いますので、
今後も私が実際に使ってみて、ホントに使えた機能だけを紹介していきたいと思います。
他にもアウトルックについてホントに使える便利な機能だけを記事にしてますのでよければどうぞー
最近のコメント