PowerTools SPREAD for Windows Forms 10.0J > 開発者ガイド > セル > スパークライン > スパークラインの操作 |
ユーザーは、Windows標準のショットカットキーを使用して、スパークラインをコピー、貼り付け、切り取り、削除できます。
また、コードでスパークラインをグループ化することもできます。
スパークラインをグループ化すると、複数のスパークラインに対して、スパークラインの種類やマーカー、データポイントの色や軸の設定を共有できます。
グループ化すると、スパークラインが1つの新規グループとしてマージされ、以前のグループからは削除されます。選択した複数のスパークラインが、それぞれ種類の異なるグループに属している場合は、最後に選択したグループの種類が新規グループに適用されます。新規グループは、最後に選択したグループの設定を維持します。
選択したスパークラインのグループ化を解除すると、これらのスパークラインは、1つのスパークラインのみで構成される個々のグループに分離されます。 元のスパークラインのデータおよび場所の範囲は、新規グループにも使用されます。 元のグループの設定も、新規グループに使用されます。
グループを削除すると、その中のスパークラインもすべて削除されます。すべてのスパークラインを削除するには、SheetViewクラスのClearSparklinesメソッドを使用します。
グループをコピーすると、それは新しいグループとして新しい位置に貼り付けられます。グループから単一のスパークラインをコピーした場合、このスパークラインのみが存在する新しいグループが作成されます。
一つのスパークラインしか存在しない場合も、このスパークラインのみで構成されるグループとしてグループ化されています。AddSparklineメソッドまたはAddSquareSparklineメソッドの戻り値は、スパークラインが追加されたグループです。 |
SheetViewクラスのAddSquareSparklineメソッドで追加したスパークラインは、データ範囲の行と列を入れ替えることができます。
行と列を入れ替えるには、ExcelSparklineGroupクラスのSwitchRowColumnメソッドを使用します。この場合、データ範囲の行数および列数は同一である必要があります。
スパークラインをグループ化するには、SheetViewクラスのGroupSparklineメソッドを使用します。グループ化を解除するには、UnGroupSparklineメソッドを使用します。
次のサンプルコードは、スパークラインをグループ化します。
C# |
コードのコピー
|
---|---|
private void Form1_Load(object sender, EventArgs e) { fpSpread1.Sheets[0].Cells[0, 0].Value = 2; fpSpread1.Sheets[0].Cells[0, 1].Value = 5; fpSpread1.Sheets[0].Cells[0, 2].Value = 4; fpSpread1.Sheets[0].Cells[0, 3].Value = -1; fpSpread1.Sheets[0].Cells[0, 4].Value = 3; fpSpread1.Sheets[0].Cells[1, 0].Value = 3; fpSpread1.Sheets[0].Cells[1, 1].Value = 1; fpSpread1.Sheets[0].Cells[1, 2].Value = 2; fpSpread1.Sheets[0].Cells[1, 3].Value = -1; fpSpread1.Sheets[0].Cells[1, 4].Value = 5; fpSpread1.Sheets[0].Cells[2, 0].Value = 3; fpSpread1.Sheets[0].Cells[2, 1].Value = 1; fpSpread1.Sheets[0].Cells[2, 2].Value = 2; fpSpread1.Sheets[0].Cells[2, 3].Value = -1; fpSpread1.Sheets[0].Cells[2, 4].Value = 5; // 1つ目のスパークラインを作成します FarPoint.Win.Spread.Chart.SheetCellRange data1 = new FarPoint.Win.Spread.Chart.SheetCellRange(fpSpread1.Sheets[0], 0, 0, 1, 5); fpSpread1.Sheets[0].AddSparkline(data1, new FarPoint.Win.Spread.Model.CellRange(0, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, new FarPoint.Win.Spread.ExcelSparklineSetting() { ShowMarkers = true, MarkersColor = Color.Red }); // 2つ目のスパークラインを作成します FarPoint.Win.Spread.Chart.SheetCellRange data2 = new FarPoint.Win.Spread.Chart.SheetCellRange(fpSpread1.Sheets[0], 1, 0, 1, 5); fpSpread1.Sheets[0].AddSparkline(data2, new FarPoint.Win.Spread.Model.CellRange(1, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, new FarPoint.Win.Spread.ExcelSparklineSetting() { ShowMarkers = true, MarkersColor = Color.Green }); // 3つ目のスパークラインを作成します FarPoint.Win.Spread.Chart.SheetCellRange data3 = new FarPoint.Win.Spread.Chart.SheetCellRange(fpSpread1.Sheets[0], 2, 0, 1, 5); fpSpread1.Sheets[0].AddSparkline(data3, new FarPoint.Win.Spread.Model.CellRange(2, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, new FarPoint.Win.Spread.ExcelSparklineSetting() { ShowMarkers = true, MarkersColor = Color.Blue }); } private void button1_Click(object sender, EventArgs e) { // スパークラインをグループ化します FarPoint.Win.Spread.ExcelSparklineGroup esg = fpSpread1.Sheets[0].GroupSparkline(new FarPoint.Win.Spread.Model.CellRange[] { new FarPoint.Win.Spread.Model.CellRange(0, 5, 3, 1) }, FarPoint.Win.Spread.SparklineType.Line); // グループにマーカーの外観を設定します esg.Setting = new FarPoint.Win.Spread.ExcelSparklineSetting() { ShowMarkers = true, MarkersColor = Color.Orange }; } |
Visual Basic |
コードのコピー
|
---|---|
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load FpSpread1.Sheets(0).Cells(0, 0).Value = 2 FpSpread1.Sheets(0).Cells(0, 1).Value = 5 FpSpread1.Sheets(0).Cells(0, 2).Value = 4 FpSpread1.Sheets(0).Cells(0, 3).Value = -1 FpSpread1.Sheets(0).Cells(0, 4).Value = 3 FpSpread1.Sheets(0).Cells(1, 0).Value = 3 FpSpread1.Sheets(0).Cells(1, 1).Value = 1 FpSpread1.Sheets(0).Cells(1, 2).Value = 2 FpSpread1.Sheets(0).Cells(1, 3).Value = -1 FpSpread1.Sheets(0).Cells(1, 4).Value = 5 FpSpread1.Sheets(0).Cells(2, 0).Value = 3 FpSpread1.Sheets(0).Cells(2, 1).Value = 1 FpSpread1.Sheets(0).Cells(2, 2).Value = 2 FpSpread1.Sheets(0).Cells(2, 3).Value = -1 FpSpread1.Sheets(0).Cells(2, 4).Value = 5 ' 1つの目のスパークラインを作成します Dim data1 = New FarPoint.Win.Spread.Chart.SheetCellRange(FpSpread1.Sheets(0), 0, 0, 1, 5) FpSpread1.Sheets(0).AddSparkline(data1, New FarPoint.Win.Spread.Model.CellRange(0, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, New FarPoint.Win.Spread.ExcelSparklineSetting() With { .ShowMarkers = True, .MarkersColor = Color.Red }) ' 2つの目のスパークラインを作成します Dim data2 = New FarPoint.Win.Spread.Chart.SheetCellRange(FpSpread1.Sheets(0), 1, 0, 1, 5) FpSpread1.Sheets(0).AddSparkline(data1, New FarPoint.Win.Spread.Model.CellRange(1, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, New FarPoint.Win.Spread.ExcelSparklineSetting() With { .ShowMarkers = True, .MarkersColor = Color.Green }) ' 3つの目のスパークラインを作成します Dim data3 = New FarPoint.Win.Spread.Chart.SheetCellRange(FpSpread1.Sheets(0), 2, 0, 1, 5) FpSpread1.Sheets(0).AddSparkline(data1, New FarPoint.Win.Spread.Model.CellRange(2, 5, 1, 1), FarPoint.Win.Spread.SparklineType.Line, New FarPoint.Win.Spread.ExcelSparklineSetting() With { .ShowMarkers = True, .MarkersColor = Color.Blue }) End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ' スパークラインをグループ化します Dim esg As FarPoint.Win.Spread.ExcelSparklineGroup = FpSpread1.Sheets(0).GroupSparkline( New FarPoint.Win.Spread.Model.CellRange() { New FarPoint.Win.Spread.Model.CellRange(0, 5, 3, 1)}, FarPoint.Win.Spread.SparklineType.Line) ' グループにマーカーの外観を設定します esg.Setting = New FarPoint.Win.Spread.ExcelSparklineSetting() With { .ShowMarkers = True, .MarkersColor = Color.Orange } End Sub |