方法: プログラムによってワークシート内の行をグループ化する
1 つ以上の行をグループ化できます。ワークシートにグループを作成するには、NamedRange コントロールまたはネイティブな Excel 範囲オブジェクトを使用します。
対象: このトピックの情報は、Excel 2013 と Excel 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
NamedRange コントロールの使用
デザイン時にドキュメント レベルのプロジェクトに NamedRange コントロールを追加する場合、そのコントロールを使用してプログラムでグループを作成できます。次の例では、同じワークシートに 3 つの NamedRange コントロール (data2001、data2002、および dataAll) があることを前提としています。名前付き範囲はそれぞれ、ワークシートの行全体を参照します。
NamedRange コントロールのグループをワークシートに作成するには
それぞれの範囲の Group メソッドを呼び出して、3 つの名前付き範囲をグループ化します。このコードは、ThisWorkbook クラスではなくシート クラスに配置する必要があります。
With Me .data2001.Group() .data2002.Group() .dataAll.Group() End With
this.data2001.Group();
[!メモ]
行のグループ化を解除するには、Ungroup メソッドを呼び出します。
ネイティブな Excel 範囲の使用
このコードでは、ワークシートに data2001、data2002、および dataAll という 3 つの Excel 範囲があることを前提としています。
ワークシート内に Excel 範囲のグループを作成するには
それぞれの範囲の Group メソッドを呼び出して、3 つの名前付き範囲をグループ化します。次の例では、同じワークシートに data2001、data2002、および dataAll という名前の 3 つの Microsoft.Office.Interop.Excel.Range コントロールがあることを前提としています。名前付き範囲はそれぞれ、ワークシートの行全体を参照します。
With Me.Application .Range("data2001").Group() .Range("data2002").Group() .Range("dataAll").Group() End With
this.Application.get_Range("data2001"); this.Application.get_Range("data2002") .Group(); this.Application.get_Range("dataAll") .Group();
[!メモ]
行のグループ化を解除するには、Ungroup メソッドを呼び出します。
参照
処理手順
方法 : ワークシートに NamedRange コントロールを追加する