V4 V5

reogrid-json の構造です。Web 版(reogrid-web)と共通の形式で、 未知のキーは黙って無視されます。

ドキュメント

{
  "format": "reogrid-json",
  "version": 1,
  "styles": [ ... ],
  "numberFormats": [ "#,##0", "yyyy/mm/dd" ],
  "definedNames": [ ... ],
  "workbook": { "activeSheet": 0, "sheets": [ ... ] }
}
キー内容
format常に "reogrid-json"
version現在 1
stylesスタイルのテーブル。セルは添字で参照する
numberFormats書式コードのテーブル。同上
definedNames定義名
workbookワークブック本体

スタイルと数値書式をテーブルに集約しているため、同じ書式のセルが何万あっても ファイルサイズは増えません。

definedNames

{ "name": "SalesData", "scope": null, "address": "Sheet1!A2:C100" }

scopenull ならブックスコープ、シート名ならそのシートのスコープです。

ワークシート

{
  "name": "Sheet1",
  "rowCount": 1048576,
  "columnCount": 16384,
  "defaultRowHeight": 20,
  "defaultColumnWidth": 80,
  "rows": { ... },
  "cols": { ... },
  "cells": [ ... ],
  "merges": [ ... ],
  "borders": [ ... ],
  "outlines": { ... },
  "cellTypes": [ ... ],
  "conditionalFormats": [ ... ],
  "filter": { ... }
}

省略可能なキーは、内容が空なら出力されません。

cells

実在するセルだけが並びます。

{ "r": 0, "c": 0, "v": 1200, "f": "SUM(A1:A2)", "s": 3, "nf": 1, "rt": [ ... ] }
キー内容
r / c行・列(0 始まり)
v
f数式(先頭の = を含まない
sstyles テーブルの添字
nfnumberFormats テーブルの添字
rtリッチテキストのラン

rt(リッチテキスト)

[ { "text": "合計 " },
  { "text": "12,800", "bold": true, "color": "#cc0000" } ]

キーは text / bold / italic / underline / fontFamily / fontSize / color

cellTypes

範囲スコープで保存されます。

{ "r": 0, "c": 0, "rs": 1048576, "cs": 1, "config": { "type": "checkbox" } }

rs / cs は行数・列数です。config の中身は各セル型が WriteConfig で書いたもの(カスタムセル型)。

outlines

{
  "rows": [ [ { ... } ], [ { ... } ] ],
  "columns": [ ... ],
  "rowsSummaryBelow": true,
  "columnsSummaryRight": true
}

rows / columnsネストレベルごとの配列です(添字 0 が最も外側)。

filter

{
  "headerRow": 0,
  "startColumn": 0,
  "endColumn": 3,
  "columns": [
    { "column": 1, "selectedValues": ["東京", "大阪"],
      "condition": { "op": "greaterThan", "value": "1000" } }
  ]
}

設定と列ごとの選択値が往復します。行の非表示状態は読み込み時に再計算されます。

condition は V5 の拡張です(Web 版が読んだ場合は無視されます)。

色の表記

"#rrggbb" の形です。アルファは省略され、不透明として扱われます。

保存されないもの

スクロール位置・選択範囲・ウィンドウ枠の固定・表示倍率・元に戻す履歴。 いずれも実行時の状態です。

次に読む

ページの内容は役に立ちましたか?