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関連

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

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

  2. Office関連

    指定したフォルダ内の画像ファイルを一括挿入するPowerPointマクロ

    大量の画像ファイルを1枚/1スライドで挿入する必要があり、…

  3. Office関連

    テスト用の文字列を挿入するWordマクロ

    文字列操作を行うマクロを書いているとき、テスト用に「あいうえおかきくけ…

  4. Office関連

    Google TTSで文字列を読み上げるマクロ

    2012/02/09 追記:関連記事・Google翻訳…

  5. Office関連

    「カレンダーから日付入力」をUserFormに移植してみました。

    前回の記事では、Office 用アプリ「カレンダーから日付入力」と同様…

  6. Office関連

    表の特定の列に対して処理を行うWordマクロ

    2015/6/12 追記:下記で紹介しているコードはセルの結合を考…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP