Office関連

[Outlook]仕分けルールでスクリプト(マクロ)を実行する。

Msdn フォーラムにあった質問関連でメモを残しておきます。

Outlookでは、

仕分けルールと通知の管理

新しい仕分けルール

自動仕分けウィザード

の「ステップ 1: 処理を選択してください」にある「スクリプト を実行する」でマクロを指定すると、メッセージ受信時に任意のマクロを実行できるのですが、

Outlook_Rule_Script_01

Sub Test()
  MsgBox "Hello."
End Sub

のようなマクロでは、スクリプト(マクロ)を選択するダイアログに表示されず、実行することができません。

どのようなマクロなら実行できるのかと言えば、下記コードを標準モジュール(ThisOutlookSessionでも可)に貼り付けてみるとよく分かります。

Option Explicit

Public Sub MailItemProc1(ByRef Item As Outlook.MailItem)
  MsgBox Item.Subject, vbSystemModal + vbInformation
End Sub

Public Sub MeetingItemProc1(ByRef Item As Outlook.MeetingItem)
  MsgBox Item.Subject, vbSystemModal + vbExclamation
End Sub

Private Sub MailItemProc2(ByRef Item As Outlook.MailItem)
  MsgBox Item.Subject, vbSystemModal + vbInformation
End Sub

Private Sub MeetingItemProc2(ByRef Item As Outlook.MeetingItem)
  MsgBox Item.Subject, vbSystemModal + vbExclamation
End Sub

Public Sub MailItemProc3(ByVal Item As Outlook.MailItem)
  MsgBox Item.Subject, vbSystemModal + vbInformation
End Sub

Public Sub MeetingItemProc3(ByVal Item As Outlook.MeetingItem)
  MsgBox Item.Subject, vbSystemModal + vbExclamation
End Sub

Public Sub MailItemProc4(ByRef Item As Object)
  MsgBox Item.Subject, vbSystemModal + vbInformation
End Sub

Public Sub MeetingItemProc4(ByRef Item As Variant)
  MsgBox Item.Subject, vbSystemModal + vbExclamation
End Sub

Public Sub MailItemProc5()
  MsgBox "Hello.", vbSystemModal + vbInformation
End Sub

Private Sub MeetingItemProc5()
  MsgBox "Hello.", vbSystemModal + vbExclamation
End Sub

上記コードのうち「スクリプトの選択」ダイアログに表示されるのは「MailItemProc1」と「MeetingItemProc1」だけです。

Outlook_Rule_Script_02

つまり、仕訳ルールで使えるスクリプト(マクロ)は、

  1. Publicスコープ
  2. 引数にMailItemMeetingItemを持つ
  3. 引数はByRef

上記条件を満たしたもの、ということになります。
詳細については「How to create a script for the Rules Wizard in Outlook」に記載があるのですが、知っていないと「なんで選択ダイアログに出てこないの?」と、引っ掛かってしまいますね。

[Officeアドイン]アドイン コマンド(Add-In Commands)の紹介(2)前のページ

オトカドール ヴェリタスコーデでメテオストライク打ってきたよ。次のページ

関連記事

  1. Office関連

    名前空間を指定してXPathで要素を取得するVBAマクロ

    Tech Communityに、“XPathで名前空間プレフィックス付…

  2. Office関連

    Word 2013では右クリックからBing検索できるようになりました。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  3. Office関連

    [リボン・カスタマイズ]ユーザー名により表示するメニューを切り替える。

    今回はリボンをカスタマイズして、ファイルを開いたユーザー名によって表示…

  4. Office関連

    [Excel]XLOOKUP関数でより簡単に値を検索できるようになりました!

    下記記事の通り、2019年8月末にVLOOKUP関数やHLOOKUP関…

  5. Office関連

    手軽に参照設定するためのVBAアドイン

    thom氏のブログで面白い記事がありました。・VBA 参照…

コメント

  • コメント (0)

  • トラックバックは利用できません。

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP