Outlook Object Model で既定のフォルダ以外のフォルダを取得する方法


Outlook Object Model では既定の受信トレイや予定表などは GetDefaultFolder メソッドにより取得ができ、取得したフォルダの Folders プロパティでサブフォルダも取得が可能です。
一方、受信トレイや予定表と同じレベルのフォルダを取得したり、追加した個人用フォルダや Hotmail のフォルダにアクセスする場合は、NameSpace オブジェクトの Folders プロパティを使います。NameSpace オブジェクトは MAPI プロファイルに対応しているもので、MAPI プロファイルに設定されているメッセージ ストアのルート フォルダが Folders プロパティに格納されています。
例えば、現在起動中の Outlook で Hotmail の受信トレイを取得する場合は、以下のようにします。

Set objHotmailInbox = Application.Session.Folders("Hotmail").Folders("受信トレイ")

注意しないといけない点は、同じ名前の個人用フォルダが複数追加されている場合、プログラムで見分けることができなくなるという点です。
For 文により、Folders の一つ一つのフォルダの内容を確認して識別するという方法もありますが、特別な理由が無い限り個人用フォルダの名前を変更する方が良いでしょう。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中