Answersにあった質問「Outlook2003で、返信する際にタイトルに自動付加される”RE:”を”Re:”にするには?」への回答として書いたコードです。
※ ThisOutlookSessionに下記コードを貼り付けます。
※ Inspectorsオブジェクトの取得はApplicationオブジェクトのStartupイベント(Outlook起動時に実行されるイベント)で行っているので、下記コードを貼り付けた後はOutlookを起動し直す必要があります。
Option Explicit Private WithEvents myInspectors As Outlook.Inspectors Private Sub Application_Startup() Set myInspectors = Application.Inspectors End Sub Private Sub myInspectors_NewInspector(ByVal Inspector As Inspector) Dim s As String If TypeName(Inspector.CurrentItem) = "MailItem" Then If Left$(Inspector.CurrentItem.Subject, 3) = "RE:" Then s = "Re" & Mid$(Inspector.CurrentItem.Subject, 3) Inspector.CurrentItem.Subject = s End If End If End Sub
InspectorsオブジェクトのNewInspectorイベントを使って、メールの返信を作成しようとしたときにマクロで件名を変更します。
上記マクロを一部変更すれば「RE:」を削除することもできるし、下記のようにすれば特定の送信者に対する返信のみ件名やCC等を変更することも可能です。
アイデア次第で何かに使えそうですね。
Private Sub myInspectors_NewInspector(ByVal Inspector As Inspector) If TypeName(Inspector.CurrentItem) = "MailItem" Then If Inspector.CurrentItem.Recipients.Count > 0 Then If InStr(Inspector.CurrentItem.Recipients(1).Address, "@hoge.jp") Then Inspector.CurrentItem.Subject = "【株式会社hoge宛】" & Inspector.CurrentItem.Subject Inspector.CurrentItem.CC = "hogehoge@hoge.jp" End If End If End If End Sub
この記事へのコメントはありません。