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

    Excel 2013で駅すぱあとWebサービス APIの「経路探索」を使ってみました。

    「「駅すぱあとWebサービス API無償提供」を利用してみました。」で…

  2. Office アドイン

    [Officeアドイン]Excel Custom functionsのデバッグ方法

    前回の記事でExcelの新たな機能「Custom functions」…

  3. Office関連

    Outlookを使ってGmail送信を行うVBAマクロ

    下記G Suite アップデート ブログにある通り、今年の6月には“安…

  4. アイコン一覧

    Office 365アイコン(imageMso)一覧(A)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  5. Office関連

    [VBA]ユーザーフォーム上のコンボボックスでオートコンプリート機能を実装する方法

    MSDNフォーラムに「ユーザーフォーム上のコンボボックスで、任意の文字…

  6. Office関連

    PowerPoint 2013でYouTubeの動画を挿入する。

    2014/5/23 追記:いつの間にか「ビデオの挿入ダイアログ」が…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP