HotXLS ドキュメント

Calculate メソッド

指定した式の結果を計算します
組み込み評価エンジンは、算術演算、セルおよび範囲参照、定義名の範囲、カスタム関数コールバックをサポートしますTRIM, PROPER, CLEAN, CHAR, CODE, T, EXACT, REPT, FIND, SEARCH, SUBSTITUTE, REPLACE); date functions (EDATE, EOMONTH, DATEDIF, YEARFRAC, DAYS, WEEKNUM, ISOWEEKNUM); workday functions (WORKDAY, NETWORKDAYS も受け付けます セル参照、範囲、参照先セルに保存された数式、シート間参照、数式で定義された入れ子の名前、セルごとのエラーを含む broadcast 配列、多変量回帰と予測の配列、およびサポートされるテキスト、日付、workday、エンジニアリング/基数変換、ビット演算、統計、集計、数学の各関数は、共有の HotXLS 数式エンジンで評価されます 詳細は DEC2BIN, DEC2HEX, DEC2OCT, BIN2DEC, BIN2HEX, BIN2OCT, OCT2DEC, OCT2BIN, OCT2HEX, HEX2DEC, HEX2BIN, HEX2OCT, BASE, DECIMAL, ARABIC); bitwise functions (BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT); statistical functions (VAR, VARP, STDEV, STDEVP, MODE, VARA, VARPA, STDEVA, STDEVPA); aggregate functions (PRODUCT, SUMSQ); math functions (GCD, LCM, MROUND, QUOTIENT, MULTINOMIAL でカスタム関数や未サポートの関数を処理します OnUserFunction / OnUserFunctionEx

構文

functionCalculate(Expression: WideString):Variant;
Expression計算する必要がある式を指定する文字列を示す WideString

使用例

この使用例は、単純な式を計算します

Val := Workbook.Calculate('100/2*3');
この使用例は、テキスト式を計算します

Val := Workbook.Calculate('SUBSTITUTE("a-b-c";"-";"+")');
この使用例は、アクティブなワークシートの A1:F10 の最小値を求めます

Val := Workbook.Calculate('MIN(A1:F10)');
この使用例は前の使用例と同等です

Val := Workbook.ActiveSheet.Calculate('MIN(A1:F10)');

関連項目

TXLSWorkbook and TXLSXWorkbook は、保存されたキャッシュを置き換えることなく、保存済みの数式結果と再評価した結果を比較できます
function CalculateAndVerify: Integer; overload;
function CalculateAndVerify(out Mismatches: TArray<TXLSVerifyMismatch>): Integer; overload;
戻り値は不一致の件数です。各レコードには SheetIndex, SheetName, one-based Row and Col, Expected, Actual, and Formula。揮発性数式、データ テーブル セル、保存された結果のない数式、評価できない数式はスキップされます
MismatchCount := Workbook.CalculateAndVerify(Mismatches);
for I := 0 to MismatchCount - 1 do
  Log(Mismatches[I].SheetName, Mismatches[I].Row,
    Mismatches[I].Col, Mismatches[I].Expected, Mismatches[I].Actual);

See also

OnUserFunction callback
OnUserFunction コールバック