方法 : Excel ブックに操作ウィンドウを追加する
Microsoft Office Excel ブックに操作ウィンドウを追加するには、最初に Windows フォーム ユーザー コントロールを作成します。 次に、そのユーザー コントロールを、プロジェクトの ThisWorkbook.ActionsPane フィールドの Controls プロパティに追加します。
対象: このトピックの情報は、Excel 2007 と Excel 2010 のドキュメント レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
注意
次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用する Visual Studio のエディションとその設定によって決まります。 詳細については、「設定の操作」を参照してください。
関連のビデオ デモについては、「How Do I: Use WPF Controls Inside an Excel Actions Pane? (操作方法: Excel 操作ウィンドウ内の WPF コントロールを使用する)」を参照してください。
ユーザー コントロールの作成
次の手順では、Excel プロジェクトのユーザー コントロールを作成する方法について説明します。 また、クリックしたときにワークシートのセルにテキストが書き込まれるボタンをユーザー コントロールに追加します。
ユーザー コントロールを作成するには
Visual Studio で、Excel ブックまたはテンプレート プロジェクトを開きます。
[プロジェクト] メニューの [新しい項目の追加] をクリックします。
[新しい項目の追加] ダイアログ ボックスの [操作ウィンドウ コントロール] をクリックし、コントロールに HelloControl という名前を付けて [追加] をクリックします。
注意
プロジェクトにユーザー コントロール アイテムを追加する方法もあります。 操作ウィンドウ コントロール アイテムおよびユーザー コントロール アイテムによって生成されるクラスは、機能的には同じです。
[ツールボックス] の [Windows フォーム] タブから、ボタン コントロールをコントロールにドラッグします。
注意
ソリューション エクスプローラーでコントロールが非表示になっている場合は、デザイナーで [HelloControl] をダブルクリックします。
ボタンの Click イベント ハンドラーに次のコードを追加します。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles Button1.Click Globals.Sheet1.Range("A1").Value2 = "Hello world!" End Sub
private void button1_Click(object sender, System.EventArgs e) { Globals.Sheet1.Range["A1", System.Type.Missing].Value2 = "Hello World!"; }
C# では、Button のイベント ハンドラーを作成する必要があります。 このコードを HelloControl コンストラクターに追加できます。 イベンド ハンドラーの作成方法の詳細については、「方法: Office プロジェクトでイベント ハンドラーを作成する」を参照してください。
public HelloControl() { InitializeComponent(); this.button1.Click += new System.EventHandler(this.button1_Click); }
操作ウィンドウへのユーザー コントロールの追加
操作ウィンドウを表示するには、ThisWorkbook.ActionsPane フィールドの Controls プロパティにユーザー コントロールを追加します。
操作ウィンドウにユーザー コントロールを追加するには
次のコードを、クラス レベルの宣言として ThisWorkbook クラスに追加します (このコードをメソッドに追加しないでください)。
Dim hello As New HelloControl
private HelloControl hello = new HelloControl();
ThisWorkbook クラスの ThisWorkbook_Startup イベント ハンドラーに次のコードを追加します。
Me.ActionsPane.Controls.Add(hello)
this.ActionsPane.Controls.Add(hello);
参照
処理手順
チュートリアル : 操作ウィンドウから文書へのテキストの挿入
チュートリアル : ユーザー コンテキストに応じた操作ウィンドウの変更
方法 : アクション ペイン上のコントロールのレイアウトを管理する