Workbook ホスト項目
Workbook ホスト項目は、Excel のプライマリ相互運用機能アセンブリの Microsoft.Office.Interop.Excel.Workbook 型を拡張する型です。Workbook ホスト項目には、Microsoft.Office.Interop.Excel.Workbook オブジェクトと同じプロパティ、メソッド、およびイベントがすべて用意されているだけなく、追加の機能も用意されています。
対象: このトピックの情報は、Excel 2013 と Excel 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
ドキュメント レベルのプロジェクトには、プロジェクト内のブックを表す既定の Workbook ホスト項目があります。アプリケーション レベルのプロジェクトでは、実行時に Workbook ホスト項目を生成できます。
ドキュメント レベルのプロジェクトの Workbook ホスト項目について
プロジェクトのブックにアクセスするには、ThisWorkbook クラスを使用します。ThisWorkbook クラスによって、Workbook ホスト項目のメンバーにアクセスし、ブックが開かれたり閉じられたりしたときにコードを実行するなど、カスタマイズの基本的なタスクを実行できます。詳細については、「ドキュメント レベルのカスタマイズのプログラミング」を参照してください。
ThisWorkbook クラスには、プロジェクトでコードの記述を開始できる場所が用意されています。このクラスには、Excel のプライマリ相互運用機能アセンブリの Microsoft.Office.Interop.Excel.Workbook オブジェクトと同じプロパティ、メソッド、およびイベントがすべて用意されているため、ThisWorkbook を使用して Excel のオブジェクト モデルにアクセスすることもできます。詳細については、「Excel オブジェクト モデルの概要」を参照してください。
ソリューション エクスプローラーで ThisWorkbook プロジェクト項目をダブルクリックすると、ブックのデザイナーが表示され、[プロパティ] ウィンドウにブックのプロパティとイベントが表示されます。
ドキュメント レベルのプロジェクトでの Workbook ホスト項目の制限
ドキュメント レベルのプロジェクトには、1 つの Workbook ホスト項目のみ (つまり ThisWorkbook クラス) を含めることができます。デザイン時に新しい Workbook ホスト項目をプロジェクトに追加することはできません。また、実行時にドキュメント レベルのカスタマイズから新しい Workbook ホスト項目を作成することもできません。
実行時に新しい Excel ブックを作成すると、そのブックは Microsoft.Office.Interop.Excel.Workbook 型になります。これはホスト項目ではないため、ホスト コントロールや Windows フォーム コントロールを含めることはできません。実行時にブックを作成する方法の詳細については、「方法: プログラムによって新しいブックを作成する」を参照してください。
Workbook ホスト項目は、ホスト コントロールのコンテナーとしては動作しません。そのため、表示されるコントロールをブックに追加することはできませんが、DataSet などのコンポーネントを追加すると、すべてのワークシートでそのコンポーネントを共有できます。ドキュメント レベルのプロジェクトでは、ブックで使用できるコンポーネントは、[ツールボックス] の [コンポーネント] タブ、[データ] タブ、および [すべての Windows フォーム] タブに表示されます。
[!メモ]
Visual Studio の Office 開発ツールでは、共有ブックはサポートされません。
アプリケーション レベルのプロジェクトの Workbook ホスト項目について
アプリケーション レベルのプロジェクトでは、Excel で開いている任意のブックの Workbook ホスト項目を実行時に生成できます。Workbook ホスト項目を生成するには、GetVstoObject メソッドを使用します。詳細については、「アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張」を参照してください。
参照
概念
アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張
ホスト項目およびホスト コントロールのプログラム上の制限事項