添付ファイルをつけて全員に返信するマクロ


コメントにて以下のご要望をいただきました。


いつも役立たせていただいています。教えていただきたいことがあります。

■要望
添付ファイルがついたメールに対して返信するときに、そのファイルをそのまま添付して返信する方法を教えてください。
■使用環境
Windows7
outlook2010
■背景
宛先が複数人いる添付ファイルありのメールに対して返信する場合、その添付ファイルを手動でつけて全員に返信するようにしています。
この手間をなくす手段をご教示いただけないでしょうか。
通常に返信するとその添付ファイル情報は失われてしまいますが受信者はえてして添付ファイルを確認したくなるもので、その際にはメール検索するという手間が発生します。
容量サイズ増大によるリソース不足よりも時間リソースの確保を重視する時代かなと思っています。



Outlook には返信時に添付ファイルを残すというような設定はありません。
そのため、マクロで実現してみました。
なお、返信メールに添付ファイルを追加するという方法だと、リッチテキスト形式の返信で添付ファイルの位置がずれるなどの問題があるため、転送メールを作成して宛先を返信メールからコピーするという処理にしています。

マクロは以下の通りです。

' ここをトリプルクリックでマクロ全体を選択できます。
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

マクロの登録方法やメニューへの追加について

添付ファイルをつけて全員に返信するマクロ」への3件のフィードバック

  1. お世話になっております。
    添付ファイルをつけて全員に返信するマクロを活用させていただきました。
    大変ありがとうございます。
    そこで、本文にコメントを入れるために、下記のような文を書き実行したところ、元々のメールの書式ではなく、MS UI Gothicに変換されてしまいます。
    何を追加すると元の書式のまま文章を追加できるか、よろしければご教授ください。
    With objForward
    .Subject = “【○○依頼】” & objForward
    .Body = “よろしくお願い致します”
    End With

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中