PowerTools SPREAD for ASP.NET 8.0J
データバールール

データバールールでは、各セルの背景として表示されるバーを使用します。 バーの長さは、ワークシート内の他のデータとの相対的なデータサイズを表します。 データバーが長いほど、セル内の値が大きいことを意味します。

条件付き書式で比較する基準となる値の型(ConditionalFormattingValueType 列挙体)、および値を指定できます。

値の型 説明
パーセント 条件付き書式ルールを適用するセル範囲内の最小値に、このセル範囲内の最大値と最小値との差のXパーセントを加算した値です。 たとえば、セル範囲内の最小値が1、最大値が10であり、Xが10である場合は、値は1.9となります。
最大値 条件付き書式ルールを適用するセル範囲内の最大値です。
最小値 条件付き書式ルールを適用するセル範囲内の最小値です。
数式 数式の結果により、ルールが適用されるセル範囲の最小値または最大値が決定されます。 演算結果が数値でない場合は、ゼロとして扱われます。
百分位数 範囲に適用された百分位関数の結果です。
自動 条件付き書式ルールを適用するセル範囲内において、より小さい値かより大きい値、または最小値か最大値です。
数値 条件付き書式ルールを適用するセル範囲内の数値、日付、または時刻の値です。

有効な百分位数は0(ゼロ)〜100です。セル範囲内のデータ点数が8,191を超える場合は、百分位を使用することはできません。百分位は、一方のデータバーによって大きな値のグループ(上位20位など)を、もう一方のデータバーによって小さな値のグループ(下位20位など)を表示する場合に使用します。極端に大きな、または小さな値が含まれ、データ表示に歪みが生じる恐れがあるような場合に便利な機能です。

有効なパーセント値は0(ゼロ)〜100です。パーセント値にパーセント記号は使用しません。 パーセント値は、値の分布が比例的である場合に、すべての値を比例的に表示するために使用します。

数式には、先頭に等号(=)を付けます。 数式が無効だと、書式は適用されません。

次の図は、セル範囲に設定されたデータバーを示します。

設定方法

データバールールを定義するには、DatabarConditionalFormattingRule クラスを使用します。罫線、色、軸を指定することもできます。比較対象となる値の最小値と最大値は、Minimum プロパティおよびMaximum プロパティで設定します。これらのプロパティは、ConditionalFormattingValue クラスを参照します。ContidionalFormattingValue クラスのType プロパティでは値の型を指定できます。詳細については、上の表のとおりです。

データバールールを、次のいずれかの方法で条件付き書式として追加します。

サンプルコード

次のサンプルコードは、データバールールを作成し、このルールを適用します。

protected void Page_Load(object sender, System.EventArgs e)
{
    FpSpread1.Sheets[0].RowCount = 5;
    FpSpread1.Sheets[0].Cells[0, 0].Value = 3;
    FpSpread1.Sheets[0].Cells[1, 0].Value = 2;
    FpSpread1.Sheets[0].Cells[2, 0].Value = 10;
    FpSpread1.Sheets[0].Cells[3, 0].Value = 1;
}
 
protected void Button1_Click(object sender, EventArgs e)
{
    FarPoint.Web.Spread.DatabarConditionalFormattingRule d = new FarPoint.Web.Spread.DatabarConditionalFormattingRule();
    d.BorderColor = Color.Red;
    d.ShowBorder = true;
    d.Minimum = new FarPoint.Web.Spread.ConditionalFormattingValue(0, FarPoint.Web.Spread.ConditionalFormattingValueType.Number);
    d.Maximum = new FarPoint.Web.Spread.ConditionalFormattingValue(15, FarPoint.Web.Spread.ConditionalFormattingValueType.Max);
    FpSpread1.ActiveSheetView.SetConditionalFormatting(0, 0, 4, 1, d);
}
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    FpSpread1.Sheets(0).RowCount = 5
    FpSpread1.Sheets(0).Cells(0, 0).Value = 3
    FpSpread1.Sheets(0).Cells(1, 0).Value = 2
    FpSpread1.Sheets(0).Cells(2, 0).Value = 10
    FpSpread1.Sheets(0).Cells(3, 0).Value = 1
End Sub
 
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim d As New FarPoint.Web.Spread.DatabarConditionalFormattingRule()
    d.BorderColor = Drawing.Color.Red
    d.ShowBorder = True
    d.Minimum = New FarPoint.Web.Spread.ConditionalFormattingValue(0, FarPoint.Web.Spread.ConditionalFormattingValueType.Number)
    d.Maximum = New FarPoint.Web.Spread.ConditionalFormattingValue(15, FarPoint.Web.Spread.ConditionalFormattingValueType.Max)
    FpSpread1.ActiveSheetView.SetConditionalFormatting(0, 0, 4, 1, d)
End Sub       

関連トピック

 

 


© 2003-2015, GrapeCity inc. All rights reserved.