方法 : ListObject コントロールのサイズを変更する
ListObject コントロールのサイズは Microsoft Office Excel ブックにコントロールを追加するときに設定しますが、後でサイズの変更が必要になる場合があります。たとえば、リストの列を 2 つから 3 つに変更する場合などです。
対象: このトピックの情報は、Excel 2013 と 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 つをクリックしてドラッグするか、[リストのサイズ変更] ダイアログ ボックスでサイズを再定義します。
[リストのサイズ変更] ダイアログ ボックスを使用してリストのサイズを変更するには
ListObject コントロールを右クリックします。
ショートカット メニューの [リスト] をポイントし、[リストのサイズ変更] をクリックします。
リストのサイズを定義するために使用するセルを選択します。
[OK] をクリックします。
実行時にドキュメント レベルのプロジェクトの ListObject コントロールのサイズを変更する
ListObject コントロールのサイズは、Resize メソッドを使用して実行時に変更できます。このメソッドは、ListObject コントロールをワークシート上の別の場所に移動するのには使用できません。ヘッダーは同じ行のままである必要があり、サイズを変更した ListObject コントロールは元のリスト オブジェクトに重なる必要があります。サイズ変更した ListObject コントロールには、ヘッダー行および少なくとも 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");
リストのサイズをセル A1 から C5 までに変更します。
List1.Resize(Range.Item("A1", "C5"))
list1.Resize(this.Range["A1", "C5"]);
実行時にアプリケーション レベルのプロジェクトの ListObject コントロールのサイズを変更する
実行時に任意の開いているワークシート上の ListObject コントロールのサイズを変更できます。アプリケーション レベルのアドインを使用して ListObject コントロールをワークシートに追加する方法の詳細については、「方法 : ワークシートに ListObject コントロールを追加する」を参照してください。
リスト オブジェクトのサイズをプログラミングによって変更するには
Sheet1 に、セル A1 から B3 までのサイズの ListObject コントロールを作成します。
Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet = _ Application.ActiveSheet Dim worksheet As Microsoft.Office.Tools.Excel.Worksheet = _ Globals.Factory.GetVstoObject(NativeWorksheet) Dim list1 As Microsoft.Office.Tools.Excel.ListObject list1 = worksheet.Controls.AddListObject(worksheet.Range("$A$1:$B$3"), "MyListObject")
Worksheet worksheet = Globals.Factory.GetVstoObject(Application.ActiveSheet); Microsoft.Office.Tools.Excel.ListObject list1; list1 = worksheet.Controls.AddListObject(worksheet.Range["$A$1:$B$3"], "MyListObject");
リストのサイズをセル A1 から C5 までに変更します。
list1.Resize(worksheet.Range("A1", "C5"))
list1.Resize(worksheet.Range["A1", "C5"]);
参照
処理手順
方法 : ワークシートに ListObject コントロールを追加する
方法 : NamedRange コントロールのサイズを変更する
概念
アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張