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
















この記事へのコメントはありません。