ワークシートに NamedRange コントロールを追加する

ドキュメント レベルのプロジェクトでは、デザイン時および実行時に、 NamedRange コントロールを Microsoft Office Excel ワークシートに追加できます。

適用対象: このトピックの情報は、Excel のドキュメント レベルのプロジェクトおよび VSTO アドインのプロジェクトに適用されます。 詳細については、「Office アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

VSTO アドイン プロジェクトでも、実行時に NamedRange コントロールを追加できます。

このトピックでは、次のタスクについて説明します。

デザイン時に NamedRange コントロールを追加する

デザイン時にドキュメント レベルのプロジェクトのワークシートに NamedRange コントロールを追加する方法として、Excel から行う方法、Visual Studio の ツールボックスから行う方法、 [データ ソース] ウィンドウから行う方法があります。

Note

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。 詳細については、「Visual Studio IDE のカスタマイズ」を参照してください。

Excel で [名前ボックス] を使用してワークシートに NamedRange コントロールを追加するには

  1. 名前付き範囲に含める 1 つ以上のセルを選びます。

  2. [名前ボックス] に範囲の名前を入力し、Enter キーを押します。

    [名前ボックス] は、数式バーの横、ワークシートの列 A の真上にあります。

ツールボックスを使用してワークシートに NamedRange コントロールを追加するには

  1. ツールボックス を開き、 [Excel コントロール] タブをクリックします。

  2. NamedRange をクリックし、ワークシートにドラッグします。

    [NamedRange コントロールの追加] ダイアログ ボックスが表示されます。

  3. 名前付き範囲に含める 1 つ以上のセルを選びます。

  4. OK をクリックします。

    コントロールに既定の名前を付けない場合は、 [プロパティ] ウィンドウで名前を変更します。

[データ ソース] ウィンドウを使用してワークシートに NamedRange コントロールを追加するには

  1. [データ ソース] ウィンドウを開いて、プロジェクトのデータ ソースを作成します。 詳細については、「新しい接続を追加する」を参照してください。

  2. [データ ソース] ウィンドウからワークシートにフィールドを 1 つドラッグします。

    データがバインドされた NamedRange コントロールがワークシートに追加されます。 詳細については、「データ連結と Windows フォーム」を参照してください。

実行時に文書レベルのプロジェクトに NamedRange コントロールを追加する

NamedRange コントロールは、実行時にプログラムによってワークシートに追加できます。 この方法を使用すると、イベントに応答してホスト コントロールを作成できます。 動的に作成された名前付き範囲は、ワークシートを閉じたときに、ホスト コントロールとしてワークシートに保持されません。 詳細については、「実行時に Office 文書にコントロールを追加する」を参照してください。

プログラムによってワークシートに NamedRange コントロールを追加するには

  1. StartupSheet1イベント ハンドラーに、以下のコードを挿入します。このコードでは、 NamedRange コントロールをセル A1 に追加して、その Value2 プロパティを Hello world!に設定します。

    Microsoft.Office.Tools.Excel.NamedRange textInCell;
    textInCell = this.Controls.AddNamedRange(this.get_Range("A1"), "cellText");
    
    textInCell.Value2 = "Hello world!";
    

実行時に VSTO アドイン プロジェクトに NamedRange コントロールを追加する

プログラムを使用して NamedRange コントロールを VSTO アドイン プロジェクトの任意の開いているワークシートに追加できます。 動的に作成された名前付き範囲は、ワークシートを閉じたときに、ホスト コントロールとしてワークシートに保持されません。 詳細については、「実行時に VSTO アドインの Word 文書と Excel ブックを拡張する」を参照してください。

プログラムによってワークシートに NamedRange コントロールを追加するには

  1. 次のコードでは、開いているワークシートに基づいたワークシート ホスト項目を生成し、 NamedRange コントロールをセル A1 に追加して、その Value2 プロパティを Hello worldに設定します。

    private void AddNamedRange()
    {
        Microsoft.Office.Tools.Excel.NamedRange textInCell;
    
        Worksheet worksheet = Globals.Factory.GetVstoObject(
            Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets[1]);
    
    
        Excel.Range cell = worksheet.Range["A1"]; 
        textInCell = worksheet.Controls.AddNamedRange(cell, "MyNamedRange");
        textInCell.Value2 = "Hello World";
     }