MESCIUS SPREAD for Windows Forms 17.0J
データの配置

個々のセル、またはセル範囲のデータの配置を設定できます。コードでは、CellクラスのHorizontalAlignmentプロパティに水平方向の配置を、VerticalAlignmentプロパティに垂直方向の配置を設定します。配置の設定には、CellHorizontalAlignment列挙体、およびCellVerticalAlignment列挙体を使用します。

次の図は、配置の設定例です。設定に使用したサンプルコードを後述します。

セルデータの配置

Cellクラスでは、セルテキスト周囲に余白を追加するTextIndentプロパティ、CellPaddingプロパティを提供しています。

データの配置方法がデータのオーバーフロー表示に影響を与えるしくみについては、「オーバーフロー表示」を参照してください。

表示位置の維持

シートのスクロールにより、セルの一部が画面上に表示されなくなったときにも、データの表示位置を維持するように設定できます。FpSpreadクラスのAllowCellContentFloatプロパティを設定します。この設定は、結合、またはマージされたセル範囲に対しても有効です。

下図は、データをセルの中央に配置した例です。シートを下にスクロールしても、データがセルの表示領域の中央に表示されるよう、表示位置が維持されます。設定方法については、後述のサンプルコードを参照してください。

AllowCellContentFloatプロパティの設定はシェイプなどのフローティングオブジェクト、斜め罫線およびスパークラインに対しては有効になりません。

設定方法

CellクラスのHorizontalAlignmentプロパティ、およびVerticalAlignmentプロパティを設定します。

サンプルコード

次のサンプル コードは、先頭セル(A1)のデータを水平方向は右揃え、垂直方向は下揃えに設定します。また、B2〜C3 セル内のデータを、水平方向および垂直方向に中央揃えに設定します。 このコードの結果は上図のようになります。

C#
コードのコピー
fpSpread1.Sheets[0].Cells[0,0].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right;
fpSpread1.Sheets[0].Cells[0,0].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Bottom;
fpSpread1.Sheets[0].Cells[1,1,2,2].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[1,1,2,2].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
Visual Basic
コードのコピー
FpSpread1.Sheets(0).Cells(0,0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right
FpSpread1.Sheets(0).Cells(0,0).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Bottom
FpSpread1.Sheets(0).Cells(1,1,2,2).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center
fpSpread1.Sheets(0).Cells(1,1,2,2).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center

次のサンプルコードは、対象のセルに対して水平方向の配置を、セル範囲に対して垂直方向の配置を設定します。

C#
コードのコピー
FarPoint.Win.Spread.Cell cellA1;
cellA1 = fpSpread1.ActiveSheet.Cells[0, 0];
cellA1.HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right;
cellA1.VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Bottom;
FarPoint.Win.Spread.Cell cellrange;
cellrange = fpSpread1.ActiveSheet.Cells[1,1,2,2];
cellrange.HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
cellrange.VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
Visual Basic
コードのコピー
Dim cellA1 As FarPoint.Win.Spread.Cell
cellA1 = FpSpread1.ActiveSheet.Cells(0, 0)
cellA1.HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right
cellA1.VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Bottom
Dim cellrange As FarPoint.Win.Spread.Cell
cellrange = FpSpread1.ActiveSheet.Cells(1, 1, 2, 2)
cellrange.HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center
cellrange.VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center

次のサンプルコードは、AllowCellContentFloatプロパティを有効に設定し、対象のセルのデータが常に中央に表示されるよう設定します。

C#
コードのコピー
fpSpread1.AllowCellContentFloat = true;
fpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.Pixel;
fpSpread1.ActiveSheet.Rows[0].Height = 150;
fpSpread1.ActiveSheet.Cells[0, 0].Value = "テスト";
fpSpread1.ActiveSheet.Cells[0, 0].VerticalAlignment =FarPoint.Win.Spread.CellVerticalAlignment.Center;
fpSpread1.ActiveSheet.Cells[0, 0].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
Visual Basic
コードのコピー
FpSpread1.AllowCellContentFloat = True
FpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.Pixel
FpSpread1.ActiveSheet.Rows(0).Height = 150
FpSpread1.ActiveSheet.Cells(0, 0).Value = "テスト"
FpSpread1.ActiveSheet.Cells(0, 0).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center
FpSpread1.ActiveSheet.Cells(0, 0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center

SPREAD デザイナの使用

  1. 作業領域で、セル データの水平方向の配置を設定する1つまたは複数のセルを選択します。
  2. プロパティ リストの「その他」カテゴリから HorizontalAlignment プロパティを選択します。
  3. ドロップダウン ボタンをクリックして選択肢を表示し、任意の配置を選択します。
  4. 垂直方向の配置でも、同じ手順を繰り返します。プロパティ リストから VerticalAlignment プロパティを選択して、1つまたは複数のセルの内容に対して垂直方向の配置を設定します。
  5. [ファイル]メニューから[適用して終了]を選択し、変更をコンポーネントに適用して SPREAD デザイナを終了します。

列の中央揃え

セルを結合せずに、選択したセルの内容を列全体で中央揃えにすることができます。 このような水平方向の配置は、GrapeCity.Spreadsheet 名前空間の HorizontalAlignment.CenterAcrossSelection 列挙オプションを使用して設定できます。

CenterAcrossSelection 配置オプションを実装するには、FpSpread クラスのAllowCellOverflow プロパティを true に設定し、BorderCollapse プロパティを「Enhanced」に設定する必要があります。

centerAcrossSelection

次のサンプルコードは、セルを中央揃えにします。

C#
コードのコピー
fpSpread1.AllowCellOverflow = true;
fpSpread1.BorderCollapse = BorderCollapse.Enhanced;
TestActiveSheet.Cells["C2"].Text = "機能設定をテストします";
TestActiveSheet.Cells["C2:K2"].HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection;//大きな範囲に対して設定します。
TestActiveSheet.Cells["C3"].Text = "機能設定をテストします";
TestActiveSheet.Cells["C3"].HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection;//1つのセルに対して設定します。          
TestActiveSheet.Cells["C4"].Text = "機能設定をテストします";
TestActiveSheet.Cells["C4:D4"].HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection;//データセルから始まる狭い範囲に対して設定します。         
TestActiveSheet.Cells["C5"].Text = "機能設定をテストします";
TestActiveSheet.Cells["B5:C5"].HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection;//データセルで終わる小さな範囲に対して設定します。          
FarPoint.Win.Spread.Dialogs.BuiltInDialogs.FormatCells(TestActiveSheet.Cells["A1:D5"]).ShowDialog();

Visual Basic
コードのコピー
fpSpread1.AllowCellOverflow = True
fpSpread1.BorderCollapse = BorderCollapse.Enhanced
TestActiveSheet.Cells("C2").Text = "機能設定をテストします"
TestActiveSheet.Cells("C2:K2").HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection ' 大きな範囲に対して設定します。
TestActiveSheet.Cells("C3").Text = "機能設定をテストします"
TestActiveSheet.Cells("C3").HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection ' 1つのセルに対して設定します。
TestActiveSheet.Cells("C4").Text = "機能設定をテストします"
TestActiveSheet.Cells("C4:D4").HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection ' データセルから始まる狭い範囲に対して設定します。
TestActiveSheet.Cells("C5").Text = "機能設定をテストします"
TestActiveSheet.Cells("B5:C5").HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.CenterAcrossSelection ' データセルで終わる小さな範囲に対して設定します。
FarPoint.Win.Spread.Dialogs.BuiltInDialogs.FormatCells(TestActiveSheet.Cells("A1:D5")).ShowDialog()

SPREAD デザイナの使用

  1. 作業領域で、選択範囲内で中央揃えに設定するセル範囲を選択します。
  2. プロパティ ウィンドウの選択項目リストから[スプレッド]オプションを選択します。
  3. プロパティリストの「Appearance」カテゴリーから「BorderCollapse」プロパティを選択します。
  4. プロパティリストの「Behavior」カテゴリから「AllowCellOverflow」プロパティを選択して true に設定します。
  5. ホームメニューの配置グループの右下隅にあるダイアログ ボックス ランチャーの矢印をクリックします。 「セルの書式設定」ダイアログが開きます。

  6. ダイアログの「配置」タブの「横位置」オプションのドロップダウンリストから「選択範囲内で中央」を選択します。
  7. OK」をクリックして変更を適用します。
参照

 

 


© MESCIUS inc. All rights reserved.