Outlook オブジェクト モデルの概要
Microsoft Office Outlook 向けのアドインの開発は、Outlook オブジェクト モデルに用意されているオブジェクトを操作して行います。Outlook オブジェクト モデルには、ユーザー インターフェイスにおけるアイテムを表すクラスおよびインターフェイスが用意されています。たとえば、Application オブジェクトはアプリケーション全体を表し、MAPIFolder オブジェクトは電子メール メッセージまたはその他のアイテムを格納するフォルダーを表し、MailItem オブジェクトは電子メール メッセージを表します。
このトピックでは、Outlook オブジェクト モデルの主なオブジェクトの一部について簡単に説明します。Outlook オブジェクト モデル全体への理解を深めるのに役立つ資料については、「Outlook オブジェクト モデル ドキュメントの使用」を参照してください。
対象: このトピックの情報は、Outlook 2013 と Outlook 2010 のアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
関連のビデオ デモについては、「How Do I: Use Outlook to Create a Custom Task Report? (操作方法: Outlook を使用してカスタムのタスク レポートを作成する)」を参照してください。
Outlook プロジェクトのオブジェクトへのアクセス
Outlook には、操作できる数多くのオブジェクトが用意されています。オブジェクト モデルを有効に利用するためには、次に示すトップレベルのオブジェクトについて理解している必要があります。
Application オブジェクト
Application オブジェクトは、Outlook アプリケーションを表し、Outlook オブジェクト モデルにおける最上位のオブジェクトです。このオブジェクトの最も重要なメンバーには、次のようなものがあります。
CreateItem メソッド。電子メール メッセージ、タスク、予定などの新しいアイテムを作成するために使用します。
Explorers プロパティ。Outlook のユーザー インターフェイス (UI) 内のフォルダーの内容を表示するウィンドウにアクセスするために使用します。
Inspectors プロパティ。電子メール メッセージや会議出席依頼など、単一のアイテムの内容を表示するウィンドウにアクセスするために使用します。
Application オブジェクトのインスタンスを取得するには、プロジェクトの ThisAddIn クラスの Application フィールドを使用します。詳細については、「アプリケーション レベルのアドインのプログラミング」を参照してください。
[!メモ]
Outlook オブジェクト モデル ガードによってブロックされたプロパティやメソッドを使用するときにセキュリティ警告が表示されないようにするには、Outlook オブジェクトを ThisAddIn クラスの Application フィールドから取得します。詳細については、「Office ソリューションに固有のセキュリティに関する考慮事項」を参照してください。
Explorer オブジェクト
Explorer オブジェクトは、電子メール メッセージ、タスク、予定などのアイテムを格納するフォルダーの内容を表示するウィンドウを表します。Explorer オブジェクトには、このウィンドウを変更するために使用できるメソッドとプロパティ、およびウィンドウが変更されたときに発生するイベントが含まれます。
Explorer オブジェクトを取得するには、次のいずれかの操作を実行します。
Application オブジェクトの Explorers プロパティを使用して、Outlook 内のすべての Explorer オブジェクトにアクセスします。
Application オブジェクトの ActiveExplorer メソッドを使用して、現在フォーカスが設定されている Explorer を取得します。
MAPIFolder オブジェクトの GetExplorer メソッドを使用して、現在のフォルダーの Explorer を取得します。
Inspector オブジェクト
Inspector オブジェクトは、電子メール メッセージ、タスク、予定などの単一のアイテムを表示するウィンドウを表します。Inspector オブジェクトには、このウィンドウを変更するために使用できるメソッドとプロパティ、およびウィンドウが変更されたときに発生するイベントが含まれます。
Inspector オブジェクトを取得するには、次のいずれかの操作を実行します。
Application オブジェクトの Inspectors プロパティを使用して、Outlook 内のすべての Inspector オブジェクトにアクセスします。
Application オブジェクトの ActiveInspector メソッドを使用して、現在フォーカスが設定されている Inspector を取得します。
MailItem や AppointmentItem など、特定のアイテムの GetInspector メソッドを使用して、そのアイテムに関連付けられたインスペクターを取得します。
MAPIFolder オブジェクト
MAPIFolder オブジェクトは、電子メール メッセージ、連絡先、タスクなどのアイテムを格納するフォルダーを表します。Outlook には、16 の既定の MAPIFolder オブジェクトが用意されています。
既定の MAPIFolder オブジェクトは、OlDefaultFolders 列挙値によって定義されています。次に例を示します。
Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox は、Outlook の [受信トレイ] フォルダーに対応します。
既定の MAPIFolder にアクセスし、新しい MAPIFolder を作成する方法の例については、「方法: プログラムによってカスタム フォルダーのアイテムを作成する」を参照してください。
MailItem オブジェクト
MailItem オブジェクトは、電子メール メッセージを表します。MailItem オブジェクトは、通常、[受信トレイ]、[送信済みアイテム]、[送信トレイ] などのフォルダー内にあります。MailItem は、電子メール メッセージを作成して送信するために使用するプロパティとメソッドを公開します。
電子メール メッセージの作成方法の例については、「方法: プログラムによって電子メール アイテムを作成する」を参照してください。
AppointmentItem オブジェクト
AppointmentItem オブジェクトは、[予定表] フォルダー内の会議、定期的な予定、または 1 回だけの予定を表します。AppointmentItem オブジェクトには、会議出席依頼の応答または転送などのアクションを実行するメソッド、および会議の詳細 (場所や時間など) を指定するプロパティが含まれています。
予定を作成する方法の例については、「方法: プログラムによって会議出席依頼を作成する」を参照してください。
TaskItem オブジェクト
TaskItem オブジェクトは、指定したタイム フレーム内に実行されるタスクを表します。TaskItem オブジェクトは、[仕事] フォルダーに格納されます。
タスクを作成するには、Application オブジェクトの CreateItem メソッドを使用し、パラメーターの olTaskItem 値を渡します。
ContactItem オブジェクト
ContactItemのオブジェクトは [連絡先] フォルダーの連絡先を表します。ContactItem オブジェクトには、このオブジェクトが表す人に関するさまざまな連絡先情報 (住所、電子メール アドレス、電話番号など) が格納されます。
新しい連絡先を作成する方法の例については、「方法: プログラムによって Outlook の連絡先にエントリを追加する」を参照してください。既存の連絡先を検索する方法の例については、「方法: プログラムによって特定の連絡先を検索する」を参照してください。
Outlook オブジェクト モデル ドキュメントの使用
Outlook オブジェクト モデルの詳細については、Outlook プライマリ相互運用機能アセンブリ (PIA) のリファレンスおよび VBA オブジェクト モデルのリファレンスを参照してください。
プライマリ相互運用機能アセンブリのリファレンス
Outlook PIAのリファレンスでは、Outlook 2010のプライマリ相互運用機能アセンブリの型。詳細については、Outlook 2010プライマリ相互運用機能アセンブリの参照" "を参照してください。
このドキュメントには、PIA のすべての型の情報だけでなく、PIA の構造体に関する追加情報および一般的な Outlook のオートメーション タスクのコード例も含まれています。
VBA オブジェクト モデルのリファレンス
VBA オブジェクト モデルのリファレンスでは、Visual Basic for Applications (VBA) コードに公開される Outlook オブジェクト モデルについて説明しています。詳細については、Outlook 2010のオブジェクト モデルのリファレンス" "を参照してください。
VBA オブジェクト モデルのリファレンス内のオブジェクトとメンバーはすべて、Outlook PIA の型とメンバーに対応します。たとえば、VBA オブジェクト モデルのリファレンス内の Inspector オブジェクトは、Outlook PIA の Microsoft.Office.Interop.Outlook.Inspector オブジェクトに対応します。VBA オブジェクト モデルのリファレンスでは、ほとんどのプロパティ、メソッド、およびイベントのコード例を紹介しています。ただし、Visual Studio を使用して作成した Outlook アドイン プロジェクトでこのリファレンス内の VBA コードを使用するには、それらを Visual Basic または Visual C# に変換する必要があります。
関連トピック
タイトル |
説明 |
---|---|
連絡先を操作するタスクを実行する方法について説明するトピックを示します。 |
|
メール アイテムを操作するタスクを実行する方法について説明するトピックを示します。 |
|
フォルダーを操作するタスクを実行する方法について説明するトピックを示します。 |
|
予定表アイテムを操作するタスクを実行する方法について説明するトピックを示します。 |
|
現在のフォルダーの名前、および選択されたアイテムに関する一部の情報を表示する方法について説明します。 |