質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Outlook

Microsoft OutlookはMicrosoft Officeの一部として組み込まれている、のユーザー管理とメーラーの機能を持ち合わせたソフトウェアです。

メール

メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。

Q&A

解決済

2回答

4083閲覧

OUTLOOK2019で自動転送の際に件名を変更したい

RANDS_CHANP

総合スコア18

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Outlook

Microsoft OutlookはMicrosoft Officeの一部として組み込まれている、のユーザー管理とメーラーの機能を持ち合わせたソフトウェアです。

メール

メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。

0グッド

0クリップ

投稿2021/07/29 03:00

OUTLOOKの活用について色々ネット検索してみたのですが、条件に合ったものが見つからず
教えて頂きたく思います。

私はOUTLOOK2019を使用しており、「仕分けルールと通知」を利用して特定のメールを
自動転送しているものがあります。

当然ながら、この時に元々のメール内容のまま転送になりますが、件名を
あらかじめ決めておいたフレーズに変更して転送が出来ないかと思っております。

「仕分けルールと通知」のメニューだけでは出来そうにないので、VBAになるのかも
しれないのですが、もし方法をご存知な方いらっしゃいましたら教えて頂けないでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RANDS_CHANP

2021/07/29 10:46

有難うございます。microsoft.comでは海外からの和訳で説明されどうしても理解し難い部分があったり、テクニカル サポート詐欺の記載が入ったりするため、戸惑っております。申し訳ございません。助けて頂けると幸いです。
guest

回答2

0

本件について、millefeuille様より教わったVBA構文に特化した形で、新たな質問として別途投稿させて頂いたため、本質問としては一旦解決とさせて頂きました。

投稿2021/09/01 09:38

RANDS_CHANP

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

Outlook の仕分けルールの処理では固定の件名で転送することはできません。
以下のようなマクロを作成し、ルールの「スクリプトを実行する」でこのマクロを指定することで、固定の件名で転送することが可能です。
マクロの中の "転送通知" を固定の件名に、"forward@example.com" を転送先のメールアドレスに変更してください。

VBA

1Public Sub ForwardWithFixedSubject(ByRef rcvMail As MailItem) 2 Const FIXED_SUBJECT = "転送通知" 3 Const FORWARD_ADDRESS = "forward@example.com" 4 Dim fwdMail As MailItem 5 ' 6 Set fwdMail = rcvMail.Forward 7 fwdMail.Subject = FIXED_SUBJECT 8 fwdMail.To = FORWARD_ADDRESS 9 fwdMail.Send 10End Sub

なお、「スクリプトを実行する」という処理を使用できるようにするには以下のレジストリ設定が必要となります。

キー: HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Security
名前: EnableUnsafeClientMailRules
種類: REG_DWORD
値: 1

投稿2021/08/05 09:19

millefeuille

総合スコア221

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RANDS_CHANP

2021/08/09 04:36 編集

コード書いて頂き有難うございます!非常に嬉しいです。 この場合、特定条件のメールのみを転送するとすれば、その条件(ex.件名や送信主)はどこに設定すれば 宜しいでしょうか。 また「レジストリ設定」は触ったことが無いので少し詳しく教えて頂けますでしょうか。 設定方法など一度ネットで探してみたいと思いますが、設定による影響が大きそうなイメージが ありまして、もしお気付きの範囲で素人が設定触る際のリスクや注意点など教えて頂けると幸いです。 勉強不足で大変恐縮です。
millefeuille

2021/08/11 06:25

このマクロはルールの処理として実行するためのマクロなので、条件はルールで設定します。 例えば、件名に AAA が含まれるメールをこのマクロで転送する場合、以下のような手順でルールを作成することになります。 1. [仕分けルールと通知] で [新しい仕分けルール] をクリック 2. [受信メッセージにルールを適用する] を選択して [次へ] をクリック 3. 「[件名] に 特定の文字 が含まれる場合」 のチェックボックスをオン 4. [ステップ 2] の [特定の文字] をクリック 5. [件名] に含まれる文字に AAA と入力し、[追加] をクリック 6. [OK] をクリック 7. [次へ] をクリック 8. 「スクリプト を実行する」 のチェックボックスをオン 9. [ステップ 2] の [スクリプト] をクリック 10. [スクリプト] で "Project1.ThisOutlookSession.ForwardWithFixedSubject" を選択し、[OK] をクリック 11. [完了] をクリック なお、レジストリ設定については、設定する場所を間違えなければそれほど影響はありません。 確かに重要なレジストリ設定を変更すると Windows が起動できなくなったりすることもあるのですが、指定されたレジストリ設定を追加したり変更したりするというだけなのであれば、問題はないでしょう。
RANDS_CHANP

2021/08/12 08:15

有難うございます。一度じっくりやってみたいと思います。 また不明な点あればお尋ねさせて下さい。
RANDS_CHANP

2021/08/16 02:24

ご丁寧に記載頂いており申し訳ございません。 チャレンジしてみておりますが、2つ問題がありました。 1つは上記ルール手順で8番目の「スクリプトを実行する」のチェックボックスが無いこと。 2つめはレジストリの設定で、\Securityの階層に記載頂いた名前のレジストリが見つかりませんでした。 少し調べてみようと思っておりますが、もし何かご存じであれば ご教示頂けますでしょうか。
RANDS_CHANP

2021/08/16 05:27 編集

失礼しました。レジストリの設定の件ですが、\Securityの階層に「名前」と「種類」と「値」を記載頂いた通りに新規で作成してみました。 そしてOUTLOOKを再起動すると、上記の仕分けルールの手順で8番目の「スクリプトを実行する」のチェックボックスが出来ていました。 あとは、マクロが動くかチャレンジしておりますが、何故か転送されません。 上記記載頂いたVBAコードで、” ”内の赤文字を変更すると動くと思っているのですが、 ピクリとも実行されない状況です。何が考えられますでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問