JavaScriptから組み込み関数を使用する

こんにちは。SPREADチームでテクニカルサポートを担当している小津です。
SpreadJSには、300種類を超えるExcel互換の関数が組み込まれているのは、ご存じの方も多いのではと思います。JavaScriptに限らず.NET版のSPREADでも、組み込み関数はすっかりおなじみの機能ですよね。

さて、この関数、コードから実行できることをご存じでしょうか。JavaScriptからも、とても簡単に使用できます。お客様からも、ときどきあるお問合せですが、

  • A1形式のセル参照から、行および列インデックスを取得したい
  • 反対に、行および列インデックスからA1形式のセル参照を取得したい

これらのご要望、ROW, COLUMN, ADDRESSといった組み込み関数を使用すると容易に実現できます。
SpreadJSのCalcEngineタイプが提供するevaluateFormulaメソッドで、JavaScriptから数式を実行できます。以下、ROWおよびCOLUMN関数を実行する例です。

var spCalc = GC.Spread.Sheets.CalcEngine;
//ROW関数を実行
var row = spCalc.evaluateFormula(sheet, 'ROW(A1)', 0, 0, false);
//COLUMN関数を実行
var col = spCalc.evaluateFormula(sheet, 'COLUMN(A1)', 0, 0, false);

evaluateFormulaメソッドの引数に、数式を指定します。メソッドの戻り値が、数式の戻り値です。
実にシンプルです。

以下、上の方法を使用したサンプルを作成してみました。
テキストボックスに、A1形式のセル参照を入力するとアクティブセルを移動します。

さいごに

弊社WebサイトにはSpreadJSを手軽に体験いただけるデモアプリケーションや無料のトライアル版がございます。今回の記事と併せてこちらも是非、ご確認ください。

\  この記事をシェアする  /