SpreadJSロードマップ(V14J)

WebアプリケーションでExcelライクなUIと操作性を実現するJavaScriptライブラリ「SpreadJS(スプレッドJS)」の新バージョン「V14J」が2021年1月27日(水)にリリースとなる予定です。

これに先立ち、今回の記事では追加予定の機能を一足早くご紹介いたします。

(注)
本記事は、SpreadJS V14Jにおける以下の機能追加をお約束するものではありません。
現時点(2020年12月24日)の製品開発状況をもとに情報を作成しており、
実際に新バージョンへ実装される機能の一覧とは異なる可能性があることを予めご了承ください。

新収録「リボンコンテナ」

リボンコンテナの実装例

V14Jから新コンポーネント「リボンコンテナ」の利用が可能になります。リボンコンテナは「SpreadJSデザイナ」をベースに開発されたコンポーネントです。このコンポーネントを利用することにより、スタンドアロンアプリケーションとして提供しているSpreadJSデザイナと同等の機能をアプリケーションに組み込めるようになります。

また、このコンポーネントではリボンやコンテキストメニューのカスタマイズや、スプレッドシート部へのプログラム的なアクセスをサポートします。これらの機能を活用することでMicrosoft Excelとほぼ同一のUIと操作性を備えるアプリケーション画面を素早く、効率的に開発することが可能です。

チャート関連の新機能・機能強化

ファンネルチャート

ファンネルチャート

Excel 2019でサポートされた「ファンネルチャート(じょうごグラフ)」の表示がSpreadJSでも可能になります。製品に搭載された他のチャートと同様にExcelファイルとSpreadJS間のインポートやエクスポートにも対応します。

パターンによる背景の塗りつぶし

パターンによる背景の塗りつぶし

チャートエリアやチャート要素の背景色として、パターンによる塗りつぶしが設定できるようになります。

縦軸と横軸の交点設定

縦軸と横軸の交点設定
x=90、y=-1を交点に設定した場合の例

チャートにおける軸の書式設定で、縦軸と横軸の交点を任意に設定できるようになります。

セル関連の新機能・機能強化

ヘッダセル機能の強化

ヘッダセル機能の強化

ヘッダセルにスパークラインや数式が設定できるようになります。数式による列データの集計結果表示や、スパークラインによる列データの可視化表示をヘッダセル上に実現することで、より訴求力のあるデータ表示が可能となります。

マルチカラムピッカー

新しいドロップダウンオブジェクトとして「マルチカラムピッカー」が利用できるようになります。この機能を使用することで、セルボタンの押下による複数列リストのドロップダウン表示が可能になります。このリストには、表示データとして配列データやセル範囲、数式の演算結果やシート上のテーブルなどを設定できます。

セルの背景でのパターン設定/グラデーション設定

セルの背景でのパターン設定/グラデーション設定

セル背景の塗りつぶしで、グラデーションや網掛け表示をはじめとするパターンを設定できるようになります。

HTML出力

HTML出力

toHtmlメソッドの利用により、シート上の任意のセル範囲をHTMLデータとして出力できるようになります。また、出力時のオプション指定により、ヘッダやスタイルの出力有無も選択することが可能です。

数値・日付のオーバーフロー表示

数値・日付のオーバーフロー表示

新しく追加されるnumbersFitModeオプションの利用により、セルのサイズが小さく、数値や日付データが表示エリアに収まりきらない場合の表示方法を選択できるようになります。既存の「#」記号によるマスク表示に加えて、隣接するセルへのオーバーフロー表示が可能になります。

getRange APIの強化

getRange APIの強化

getRangeメソッドの引数で「A1形式」を使用したセル範囲の指定が可能になります。従来の方法よりも、より直感的で簡潔なコード記述ができるようになります。

自動マージセルの選択モード

sourceモードを有効にした場合の例

自動マージ機能で結合されたセルの選択モードが設定できるようになります。結合セルをひとつのセルとして選択するmergedモードと、結合セル内でも個別のセルを選択できるsourceモードを提供します。

スパークライン関連の新機能・機能強化

レンジブロックスパークライン

レンジブロックスパークライン

テンプレート型セルと同等の機能がスパークラインで実現できる「レンジブロックスパークライン」の利用が可能になります。

カスケードスパークラインの強化

カスケードスパークラインの強化

専用の識別子をセルに設定し引数にして参照することで、カスケードスパークラインのプラス表示、マイナス表示、合計値の表示を任意に設定できるようになります。また、合計値となるバーの色もカスタマイズ可能になります。

ワークブック関連の新機能・機能強化

増分ロード

大量データの読込で効果を発揮する「増分ロード」をサポートします。fromJSONメソッドによるSpreadJSへのデータ設定で、新オプションincrementalLoadingを有効にすることにより、バックグラウンドでのデータ読込と、読込が完了したデータの表示が並行して実行されるようになります。

数式機能の強化

Excel互換関数の追加

Excelと互換性のある下記の関数をサポートします。

  • XMATCH関数
  • XLOOKUP関数
  • LET関数
  • CONVERT関数

その他の新機能・機能強化

ここまで紹介した機能のほか、V14Jでは以下の機能に対応します。

チャート関連
  • 棒グラフ表示における要素間隔や系列の重なりの設定
  • ドーナツチャートの穴のサイズ設定
  • チャートタイトル/ラベルにおける改行の挿入
  • セミコロン、ピリオド、スペースを使用したデータラベルの区切り文字の設定
シート関連
  • 外部アプリケーション上でコピーした画像のペースト
  • Excel上でコピーしたシェイプ/チャートを画像としてペースト
テーブル関連
  • 連結データのサイズに応じたテーブル領域の自動拡張
セル関連
  • コメントインジケータの色およびサイズの設定
数式関連
  • getPrecedentsメソッドによる、数式参照情報の取得
  • 循環参照設定時の反復計算
  • OBJECT関数/PROPERTY関数(SpreadJS独自関数)
アクセシビリティ関連
  • 所定のスクリーンリーダーによるデータの読み上げ

更なる進化を遂げるSpreadJSをお楽しみに!

以上の内容がSpreadJS V14Jで実装される予定です!Excelとの互換性をさらに強化しながら開発ツールとしてより便利になった新SpreadJSにご期待ください。なお、リリース日間近には当ブログにて再度正式に「新機能紹介」をご案内いたしますので、そちらもご確認ください。