自動仕分けのルールで転送、返信の際に BCC を指定するマクロ


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


EXCEL,ACCESSのVBAは少々かじっています。
OUTLOOKのVBAも利用したくてWEB検索をしていました。

仕分けルールで
「受信者のアドレスに、特定の文字が含まれている場合」でドメインを条件指定し、特定のアドレスを[CC]ではなく、[BCC]に追加して送信、転送、返信したいのですが、ご教示いただけたら幸いです。

よろしくお願いいたします。


ルールによる転送、返信では BCC を指定することができませんが、ルールのアクションとしてスクリプトを選択し、以下のようなマクロを実行するスクリプトとして選択することで実現できます。
FORWARD_TO、FORWARD_BCC や REPLY_BCC に転送先や BCC したいアドレスなどを設定し、マクロのスクリプトとして転送する際には ForwardWithBCC を、返信する際には ReplyWithBCC を指定します。
ルールで指定できるマクロを作るための詳細については自動仕分けのルールで転送するマクロを参照してください。

' ここをトリプルクリックでマクロ全体を選択できます。
' 転送の際に指定するマクロ
Public Sub ForwardWithBCC(orgMail As MailItem)
    Const FORWARD_TO = "to@example.com"
    Const FORWARD_BCC = "bcc@example.com"
    Const FORWARD_BODY = "メールを転送します。" & vbCrLf
    '
    Dim fwdMail As MailItem
    Dim recTo As Recipient
    Dim recBcc As Recipient
    '
    Set fwdMail = orgMail.Forward
    Set recTo = fwdMail.Recipients.Add(FORWARD_TO)
    recTo.Type = olTo
    recTo.Resolve
    Set recBcc = fwdMail.Recipients.Add(FORWARD_BCC)
    recBcc.Type = olBCC
    recBcc.Resolve
    '
    fwdMail.Body = FORWARD_BODY & fwdMail.Body
    fwdMail.Send
End Sub
' 返信の際に指定するマクロ
Public Sub ReplyWithBCC(orgMail As MailItem)
    Const REPLY_BCC = "bcc@example.com"
    Const REPLY_BODY = "メールを受信しました。" & vbCrLf
    '
    Dim repMail As MailItem
    Dim recBcc As Recipient
    '
    Set repMail = orgMail.Reply
    Set recBcc = repMail.Recipients.Add(REPLY_BCC)
    recBcc.Type = olBCC
    recBcc.Resolve
    '
    repMail.Body = REPLY_BODY & repMail.Body
    repMail.Send
End Sub

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

広告

自動仕分けのルールで転送、返信の際に BCC を指定するマクロ」への1件のフィードバック

コメントを残す

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

WordPress.com ロゴ

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

Twitter 画像

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

Facebook の写真

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

Google+ フォト

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

%s と連携中