GrapeCity.devlog

グレープシティ株式会社のDeveloper Tools〈開発支援ツール〉の最新情報をお届けします。製品のTIPSや発売情報、イベントのお知らせなどをいち早く発信中です。

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

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

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

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

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

[code lang="javascript"] 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); [/code]

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

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

Copyright © GrapeCity, Inc. All Rights Reserved.