SPREAD for WPF 4.0J - GcSpreadSheet
ヘッダセルの結合
MESCIUS SPREAD for WPF 4.0J - GcSpreadSheet > 開発者ガイド > ヘッダ > ヘッダセルの結合

行ヘッダと列ヘッダのセルを結合して、複数の行と列にまたがるセルを作成することができます。IRangeインタフェースのTextプロパティを使用することでヘッダセルにラベルを追加できます。次の画像で示しているように、デフォルト動作でヘッダを結合するには、IRangeインタフェースのMergeメソッドを使用します。

結合されたヘッダセルのクリック

既定では、ユーザーがヘッダセルをクリックすると、列全体が選択状態になります。ユーザーが、結合されたヘッダセルをクリックしたときの選択範囲を、GcSpreadSheetクラスのMergedCellSelectionPolicyプロパティで設定できます。以下、列ヘッダの2行1列目のセル(「1st Quarter」セル)をクリックした場合の、MergedCellSelectionPolicy列挙体の各設定値と選択範囲です。

Default Contained

既定値。結合の起点の列(行)のみを選択します。

ヘッダ領域に収まるセルを選択します。

Ignore Intersected

クリックされた列(行)のみを選択します。

ヘッダ領域に含まれるセルをすべて選択します。

次のコードは、2列を含む行ヘッダと3行を含む列ヘッダでセル結合を示します。 

コードのコピー
GcSpreadSheet1.Workbook.ActiveSheet.RowCount = 20; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnCount  = 8; 
GcSpreadSheet1.MergedCellSelectionPolicy = MergedCellSelectionPolicy.Default; 

// ColumnHeaderセルを結合します。 
// 列ヘッダの行数を設定します。 

GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.RowCount = 3; 

// 行ヘッダの列数を設定します。 
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.ColumnCount = 2; 

//  結合した列ヘッダセルのラベルを定義します。 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["A3"].Text = "East"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["B3"].Text = "West"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["C3"].Text = "East"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["D3"].Text = "West"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["E3"].Text = "East"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["F3"].Text = "West";
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["G3"].Text = "East"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["H3"].Text = "West"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["A2"].Text = "Quarter 1"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["C2"].Text = "Quarter 2"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["E2"].Text = "Quarter 3"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["G2"].Text = "Quarter 4"; 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["A1"].Text = "Fiscal Year 2020"; 

// 列ヘッダセルの結合を定義します。 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["A1:H1"].Merge(); 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["A2:B2"].Merge(); 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["C2:D2"].Merge(); 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["E2:F2"].Merge(); 
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells["G2:H2"].Merge(); 

// RowHeaderセルを結合します。 
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells["A1"].Text = "Row 1"; 
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells["A2"].Text = "Row 2"; 
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells["A1:B1"].Merge(); 
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells["A2:B2"].Merge();  
コードのコピー
GcSpreadSheet1.Workbook.ActiveSheet.RowCount = 20
GcSpreadSheet1.Workbook.ActiveSheet.ColumnCount = 8
GcSpreadSheet1.MergedCellSelectionPolicy = MergedCellSelectionPolicy.Default

' ColumnHeaderセルを結合します。
' 列ヘッダの行数を設定します。
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.RowCount = 3

' 行ヘッダの列数を設定します。
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.ColumnCount = 2

' 結合した列ヘッダセルのラベルを定義します。
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("A3").Text = "East"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("B3").Text = "West"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("C3").Text = "East"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("D3").Text = "West"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("E3").Text = "East"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("F3").Text = "West"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("G3").Text = "East"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("H3").Text = "West"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("A2").Text = "Quarter 1"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("C2").Text = "Quarter 2"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("E2").Text = "Quarter 3"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("G2").Text = "Quarter 4"
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("A1").Text = "Fiscal Year 2020"

' 列ヘッダセルの結合を定義します。
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("A1:H1").Merge()
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("A2:B2").Merge()
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("C2:D2").Merge()
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("E2:F2").Merge()
GcSpreadSheet1.Workbook.ActiveSheet.ColumnHeader.Cells("G2:H2").Merge()

' RowHeaderセルを結合します。
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells("A1").Text = "Row 1"
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells("A2").Text = "Row 2"
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells("A1:B1").Merge()
GcSpreadSheet1.Workbook.ActiveSheet.RowHeader.Cells("A2:B2").Merge()