PowerTools SPREAD for ASP.NET 8.0J
数式の概要

セルまたはセル範囲に数式を追加できます。1つの行または列内の全セルに、1つの数式を追加することもできます。 数式は数式表現を意味する文字列であり、通常は関数、演算子、および定数を組み合わせて構成されます。数式には、シート参照およびセル参照を使用できます。また、数式を他のセルへのコピーをユーザーに許可することも可能です。

数式の適用範囲

数式をRow クラスまたはColumn クラスに割り当てると、この行または列に対し、デフォルトの数式を割り当てたことになります。つまりこの数式は、行内または列内の全セルに対して適用されます(数式がセルレベルで上書きされている場合を除く)。行または列に数式が割り当てられた場合、数式では、この行または列内の最初のセルが基準の位置として使用されます。相対アドレスを使用する場合、数式の評価は、A 列内のセルごとに異なる結果となります。 A 列内のすべてのセルで、C2 と D2 の合計値(他の行の C列およびD列の値は含まない)が評価されるようにするには、絶対アドレスを使用して「$C$2+$D$2」という数式を使用する必要があります。

セル型

データを参照するセルのセル型には注意する必要があります。また、数式に使用するデータを割り当てるとき、Text または Value プロパティのどちらを使用するのかも注意が必要です。 Text プロパティを使用してセルデータを割り当てると、割り当てられた文字列はセル型に基づき、必要なデータ型に解析されます。たとえば、倍精度型セルDoubleCellType クラス)は文字列を倍精度データ型に解析します。 Value プロパティを使用してセルデータを割り当てると、SPREADは割り当てられたオブジェクトをそのまま受け入れます。解析は行われません。文字列を割り当てた場合は、文字列のまま入力されます。 一部の数値関数(SUM など)は、セル範囲内の数値以外の値を無視します。 たとえば、セル範囲 A1:A3 に {1, "2", 3} という値が設定されている場合、数式 SUM(A1:A3) の評価結果は4となります。これは、SUM 関数が "2" という文字列を無視するためです。数式の計算に使用されるすべてのセルには、正しい値を正しいデータ型で設定する必要があります。

設定方法

数式を追加するには、各適用箇所のFormula プロパティを使用します。

または、以下のメソッドで数式を追加します。

数式の他のセルへのコピーをユーザーに許可するには、SheetView クラスのAllowUserFormulas プロパティをtrueに設定します。この場合、ユーザーは等号(=)を入力してから数式を選択し、[Ctrl]+[C]キーでコピーできます。

サンプルコード

以下に、いくつかの数式の設定例を紹介します。

1.  次のサンプルコードは、最初のセル値に5を掛けた積を求め、この結果を別のセルに表示します。 次に、A1 から A4 までのセル範囲の値を合計し、この結果を3列目の全セルに表示します。

FpSpread2.ActiveSheetView.Cells[2, 0].Formula = "PRODUCT(A1,5)";
FpSpread2.ActiveSheetView.Columns[3].Formula = "SUM(A1:A4)";
FpSpread2.ActiveSheetView.Cells(2, 0).Formula = "PRODUCT(A1,5)"
FpSpread2.ActiveSheetView.Columns(3).Formula = "SUM(A1:A4)"        

2. 次のサンプルコードは、2つのセル値の合計を3番目のセルに表示する数式を指定します。

FarPoint.Web.Spread.Cell mycell;
mycell = FpSpread1.Cells[2, 0];
mycell.Formula = "SUM(A1:A2)";
FarPoint.Web.Spread.Cell mycell
mycell = FpSpread1.Cells(2, 0)
mycell.Formula = "SUM(A1:A2)"        

3. 次のサンプルコードは、数式内で異なるシートのセルを参照する例を示します。

FpSpread1.Sheets.Count = 3;
FpSpread1.Sheets[0].Cells[0, 0].Formula = "sheet1!A2+sheet2!A1";
FpSpread1.Sheets.Count = 3
FpSpread1.Sheets(0).Cells(0, 0).Formula = "sheet1!A2+sheet2!A1"        

SPREAD デザイナでの設定

SPREADデザイナを使用すると、専用のエディタによりリスト表示される使用可能な組み込み関数から関数を選択し、容易に数式を設定することが可能です。詳細は以下を参照してください。

関連トピック

 

 


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