次の方法で共有


方法: プログラムによってワークシート内の行をグループ化する

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 コントロールを追加する

概念

ワークシートの操作

NamedRange コントロール

Office ソリューションの省略可能なパラメーター