次の方法で共有


方法 : ListObject コントロールのサイズを変更する

ListObject コントロールのサイズは Microsoft Office Excel ブックにコントロールを追加するときに設定しますが、後でサイズの変更が必要になる場合があります。 たとえば、リストの列を 2 つから 3 つに変更する場合などです。

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

ドキュメント レベルのプロジェクトでは、デザイン時または実行時に ListObject コントロールのサイズを変更できます。 アプリケーション レベルのプロジェクトでは、実行時に ListObject コントロールのサイズを変更できます。

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

  • デザイン時に ListObject コントロールのサイズを変更する

  • 実行時にドキュメント レベルのプロジェクトの ListObject コントロールのサイズを変更する

  • 実行時にアプリケーション レベルのプロジェクトの ListObject コントロールのサイズを変更する

ListObject コントロールの詳細については、「ListObject コントロール」を参照してください。

ビデオへのリンク 関連のビデオ デモについては、「How Do I: Add Columns to a Data-Bound List Object at RunTime? (操作方法: 実行時にデータ バインド リスト オブジェクトに列を追加する)」を参照してください。

デザイン時の ListObject コントロールのサイズ変更

リストのサイズを変更するには、サイズ変更ハンドルの 1 つをクリックしてドラッグするか、[リストのサイズ変更] ダイアログ ボックスでサイズを再定義します。

[リストのサイズ変更] ダイアログ ボックスを使用してリストのサイズを変更するには

  1. ListObject コントロールを右クリックします。

  2. ショートカット メニューの [リスト] をポイントし、[リストのサイズ変更] をクリックします。

  3. リストのサイズを定義するために使用するセルを選択します。

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

実行時にドキュメント レベルのプロジェクトの ListObject コントロールのサイズを変更する

ListObject コントロールのサイズは、Resize メソッドを使用して実行時に変更できます。 このメソッドは、ListObject コントロールをワークシート上の別の場所に移動するのには使用できません。 ヘッダーは同じ行のままである必要があり、サイズを変更した ListObject コントロールは元のリスト オブジェクトに重なる必要があります。 サイズ変更した ListObject コントロールには、ヘッダー行および少なくとも 1 つのデータ行が含まれている必要があります。

リスト オブジェクトのサイズをプログラミングによって変更するには

  1. Sheet1 に、セル A1 から B3 までのサイズの ListObject コントロールを作成します。

    Dim List1 As Microsoft.Office.Tools.Excel.ListObject = _
        Me.Controls.AddListObject(Me.Range("A1", "B3"), "List1")
    
    Microsoft.Office.Tools.Excel.ListObject list1 = 
        this.Controls.AddListObject(this.Range["A1", "B3"], "list1");
    
  2. リストのサイズをセル A1 から C5 までに変更します。

    List1.Resize(Range.Item("A1", "C5"))
    
    list1.Resize(this.Range["A1", "C5"]);
    

実行時にアプリケーション レベルのプロジェクトの ListObject コントロールのサイズを変更する

実行時に任意の開いているワークシート上の ListObject コントロールのサイズを変更できます。 アプリケーション レベルのアドインを使用して ListObject コントロールをワークシートに追加する方法の詳細については、「方法 : ワークシートに ListObject コントロールを追加する」を参照してください。

リスト オブジェクトのサイズをプログラミングによって変更するには

  1. Sheet1 に、セル A1 から B3 までのサイズの ListObject コントロールを作成します。

    Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet = _
        Application.ActiveSheet
    
    ' Use the following line of code in projects that target the .NET Framework 4.
    Dim worksheet As Microsoft.Office.Tools.Excel.Worksheet = _
        Globals.Factory.GetVstoObject(NativeWorksheet)
    
    ' In projects that target the .NET Framework 3.5, use the following line of code.
    ' Dim worksheet = CType(Application.ActiveSheet,  _
    '    Excel.Worksheet).GetVstoObject()
    
    Dim list1 As Microsoft.Office.Tools.Excel.ListObject
    list1 = worksheet.Controls.AddListObject(worksheet.Range("$A$1:$B$3"), "MyListObject")
    
    
    // Use the following line of code in projects that target the .NET Framework 4.
    Worksheet worksheet = Globals.Factory.GetVstoObject(Application.ActiveSheet);
    
    // In projects that target the .NET Framework 3.5, use the following line of code.
    // Worksheet worksheet = ((Excel.Worksheet)Application.ActiveSheet).GetVstoObject();
    
    Microsoft.Office.Tools.Excel.ListObject list1;    
    list1 = worksheet.Controls.AddListObject(worksheet.Range["$A$1:$B$3", missing], "MyListObject");
    
  2. リストのサイズをセル A1 から C5 までに変更します。

    list1.Resize(worksheet.Range("A1", "C5"))
    
    list1.Resize(worksheet.Range["A1", "C5"]);
    

参照

処理手順

方法 : ワークシートに ListObject コントロールを追加する

方法 : Bookmark コントロールのサイズを変更する

方法 : NamedRange コントロールのサイズを変更する

概念

アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張

実行時の Office ドキュメントへのコントロールの追加

ホスト項目とホスト コントロールの概要

拡張オブジェクトによる Excel の自動化

ListObject コントロール

その他の技術情報

Office ドキュメントのコントロール