セルに数式を追加する
セルに数式を追加し、アクセスしたり変更したりすることができます。セルのFormulaプロパティを使用して、Aspose.Cells.GridWebはシンプルから複雑なユーザー定義の数式をサポートしています。ただし、Aspose.Cells.GridWebには多くの組み込み関数や数式(Microsoft Excelと同様)が提供されています。組み込みの関数の完全なリストについては、サポートされる関数のリストを参照してください。
数式の追加と計算方法
Aspose.Cells.GridWebでは、セルのFormulaプロパティを使用してセルに数式を追加、アクセス、および変更することができます。Aspose.Cells.GridWebは、簡単なものから複雑なものまで、ユーザー定義の数式をサポートしています。ただし、Aspose.Cells.GridWebには多くの組み込み関数や数式(Microsoft Excelに類似)も提供されています。組み込み関数の完全なリストについては、このサポートされている関数のリストを参照してください。
数式の構文は、Microsoft Excelの構文と互換性がある必要があります。たとえば、すべての数式は等号(=)で始まらなければなりません。
動的に数式を追加する場合、Aspose.Cells.GridWebは、**=**記号を使用しなくても数式として認識します。ただし、GUIで作業するエンドユーザーが使用する場合は、"=“記号を使用する必要があります。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the worksheet of the Grid that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Putting some values to cells | |
sheet.Cells["A1"].PutValue("1st Value"); | |
sheet.Cells["A2"].PutValue("2nd Value"); | |
sheet.Cells["A3"].PutValue("Sum"); | |
sheet.Cells["B1"].PutValue(125.56); | |
sheet.Cells["B2"].PutValue(23.93); | |
// Adding a simple formula to "B3" cell | |
sheet.Cells["B3"].Formula = "=SUM(B1:B2)"; |
B3セルに追加された数式をGridWebによって計算されていません
上のスクリーンショットに示されているように、数式がB3に追加されていますが、まだ計算されていません。すべての数式を計算するには、ワークシートに数式を追加した後、GridWebコントロールのGridWorksheetCollectionのCalculateFormulaメソッドを呼び出します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Calculating all formulas added in worksheets | |
GridWeb1.WorkSheets.CalculateFormula(); |
ユーザーは送信をクリックして数式を計算することもできます。
GridWebの送信ボタンをクリック
重要: ユーザーが保存ボタン、元に戻すボタン、またはシートタブをクリックすると、すべての数式が自動的にGridWebによって計算されます。
計算後の数式の結果
他のワークシートからセルを参照する
Aspose.Cells.GridWebを使用すると、異なるワークシートに格納されている値をその数式で参照して、複雑な数式を作成することが可能です。
異なるワークシートからセルの値を参照する構文はSheetName!CellNameです。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Adding a bit complex formula to "A1" cell | |
sheet1.Cells["B6"].Formula = "=(SUM(A1:A5)/AVERAGE(B1:B5))-Sheet2!B1"; |