リリースノート
ReoGrid One(V5)と ReoGrid v4 の更新履歴
ReoGrid One(V5)
5.2.0 — 2026-10-22
追加
| 領域 | 内容 |
|---|---|
| 描画 | WinForms の Direct2D 描画(Renderer = GridRenderer.Direct2D)。GPU で描画し、文字は DirectWrite で組む。スクロール時の全面再描画は GDI+ の約 3.5 倍。セル内エディタ・自動調整・はみ出し表示も同じ方式で計測する。使えない環境では GDI+ のまま(ActiveRenderer)。ネイティブ DLL(x64 / x86)をパッケージに同梱 |
| 描画 | WinForms の RenderToBitmap — 選択中の描画方式のまま、ウィンドウなしで画像に描く |
| XLSX | 共有数式(t="shared")を読み込み時に展開し、各セルが自分の数式を持つようにした(保存は通常の数式として書く) |
| 数値書式 | 経過時間 [h] [mm] [ss]、ロケールタグの通貨記号([$¥-411] など)、リテラルで区切った桁グループ(000-0000 など)、mmmmm(月の頭文字) |
改善
| 領域 | 内容 |
|---|---|
| 性能 | WPF の描画を高速化。値の変わらないセルの文字を毎フレーム組み直さないようにした(1400×900 のスクロールで、1 フレームの UI スレッドの時間が約 10 ms → 約 1.5 ms) |
| 性能 | Avalonia の描画を同じ方法で高速化(100 行 × 20 列の画面で 1 フレーム 25.7 ms → 4.9 ms) |
| 性能 | Direct2D と WPF で、毎フレーム変わる数値の描画を高速化。書式なし(General)の数値は、列幅に収まる桁数を探すたびに文字を組んでいた。数字だけの文字列は、フォントごとの文字幅の表から幅を求めるようにした(2560×1440 で見えている 1,160 セルが毎フレームすべて変わる場合、Direct2D 24.9 ms → 9.1 ms、WPF 45.0 ms → 27.4 ms) |
| 性能 | 結合セルやセル型を多く持つシートで、描画のコストがシート全体の件数に比例していた。表示している範囲の分だけになった |
| 性能 | シートが複数あり数式の無いブックで、値の書き込みを高速化(3 シート × 200 万セルで 48.6 ms → 22.4 ms) |
| 性能 | 数式の多いブックで、全体の再計算(読み込みの終了・並べ替え・元に戻す)の時間が数式の数の 2 乗で増えていたのを解消した |
| 性能 | 長い文字列のセルで、クリックした位置からキャレットを求める処理が文字数の 2 乗で遅くなっていた(32,767 文字の行では十秒以上止まることがあった) |
修正
| 領域 | 内容 |
|---|---|
| 表示 | 列幅に収まらない数値が隣のセルにはみ出していた。Excel と同じく、書式なしの数値は収まる桁まで丸め(整数部も入らなければ指数表記)、書式付きは #### を表示する |
| 表示 | 起点が画面のペインの外にある結合セルが、見えている部分で空白になっていた(上端を越えてスクロールした縦の結合、固定した列・行の境界をまたぐ結合) |
| WinForms | RenderTo / RenderFrame で同じ Graphics に何度も描くと倍率が累積し、150% では数十回で OverflowException になっていた |
| 入力規則 | 仮想化して開いたブック(XlsxReader.OpenVirtual)で、まだ表示していないシート(「選択肢」シートなど)や画面外の行を選択肢の元にするリストの入力規則が、選択肢なしになっていた。▼ を押しても一覧が開かず、どの値も規則に合わないため編集を確定できなかった |
| 仮想化 | 仮想化して開いたブックで、並べ替え・元に戻す・複数範囲のコピー・すべて置換が、まだ読み込んでいない行を空として扱い、並べ替えた値や置換した値が後で読み込まれた行に上書きされたり、元に戻すとファイルの値が消えたりしていた。起点が画面より上にある結合セルが空で描かれていた。いずれも必要な行を先に読み込む。数式・条件付き書式の集計・フィルター・行や列の挿入削除は、まだ読み込んでいない行を見ないため、編集の前に MaterializeAll() を呼ぶ(大量データ) |
| 表示 | セルに収まらない文字(隣のセルではみ出しが止まった文字、結合セルの文字)が「…」で省略されていた。Excel と同じく、配置を保ったままセルの端で切る(左揃えは先頭、右揃えは末尾、中央揃えは中央が見える)。WinForms(GDI+ / Direct2D)・WPF・Avalonia・PDF のすべて |
| 入力規則 | エラー表示をオフにした規則(ShowErrorMessage = false、xlsx の showErrorMessage なし)で、規則に合わない値が何も表示されずに拒否され、Esc でしか編集を抜けられなかった。Excel と同じく、合わない値もそのまま入力する |
| WinForms | ドロップダウン型セルとリストの入力規則の一覧が、グリッドの端で切れて一部しか見えないことがあった。WPF / Avalonia と同じくポップアップで表示し、画面の下に入らないときはセルの上に開く |
| 表示 | 結合セルの中に、結合前の各セルの罫線が格子のように出ていた(xlsx では結合範囲の各セルが罫線を持っていることが多い)。Excel と同じく、結合セルは外周の罫線だけを描く。PDF・印刷も同じ |
| XLSX | 読み込んだブックで値を編集しても、それを参照する数式(同じシート・別シートとも)が再計算されなかった。読み込みの最後に数式の依存関係を登録する(表示はファイルのキャッシュ値のまま)。仮想化して開いたブックは MaterializeAll() の後に登録する |
| XLSX | 読み込み: 組み込みの書式 ID 41〜43(桁区切り・会計)を解決する。r 属性の無い行を前の行の次として読む。ISO 8601 の日付セル(t="d")を読む。重なった結合セルがあってもブックを開ける。paperSize の無い <pageSetup> は Letter(OOXML の既定)、色の無い(自動の)フォントは黒、幅 0 の列は非表示の列、中太の破線(mediumDashed など)は太さ 2 の破線として読む |
| XLSX | 保存: 2007 より新しい関数を _xlfn. 付きで書き出す。_xHHHH_ のエスケープを読み書きし、制御文字を含むセルでも保存できる。入力規則のリストの候補に含まれる " をエスケープする。循環参照のセルは Excel と同じくキャッシュ値 0 で書き出す。値のない書式付きのセル(塗った見出し、先に書式を整えた入力欄)と、結果をキャッシュしていない数式が保存で失われていた。値のない書式付きのセルは reogrid-json にも保存する |
| 仮想化 | 仮想化して開いたブックで、既定より低い行のシートを開いた直後、画面の下が次の再描画まで空白になっていた。行の高さと非表示は開いた時点から反映する。数式の検索で、後から読み込んだ行の数式を見落としていた。ブックを閉じた直後の再描画で、まだ表示していないシートが例外になっていた |
| 数式 | 計算結果を Excel に合わせた。空セルを参照した数式の結果は 0。0^0 は #NUM!、0^-1 は #DIV/0!、double の範囲を超える結果は #NUM!。数式の最後の加減算の桁落ちは 0(=924081.39+3604900.09-759790.51-3769190.97 が 0 になる)。ROUND 系と CEILING FLOOR MROUND の丸め。数学関数の NaN・∞ はエラー値。範囲外のシリアル値を渡した日付関数は #NUM! |
| 数式 | 関数の引数と検索の規則を Excel に合わせた。VLOOKUP HLOOKUP MATCH XLOOKUP INDEX の検索。COUNTIF 系の条件は別の型の値に一致しない。COUNT は直接書いた論理値と数値の文字列も数える。AND OR XOR は範囲を引数に取れる。範囲を取る引数がエラーなら、そのエラーを返す。SEARCH はワイルドカードを使い、PROPER は Excel と同じ語の区切りで大文字にする。ワイルドカードの ~ でエスケープした文字が何にでも一致していた。LEFT RIGHT SUBSTITUTE CHAR ISEVEN ISODD の引数の扱い |
| 数式 | 自分自身のセルを読む数式(A1 に入れた =A1+1 など)を循環参照(#CIRCULAR!)として検出する。_xlfn. 付きの関数名を本来の関数として解決する。範囲を削除して壊れた名前を使う数式は、#NAME? ではなく #REF! を返す。大文字小文字だけのシート名の変更でも、参照のシート名を書き換える。行・列の削除で、詰めてきた数式の式文字列が消えることがあった。長い演算子の連鎖や、RANDBETWEEN REPT の端の引数で例外・メモリ不足になっていた |
| 数値書式 | 文字列セクション(@・4 番目のセクション)、小数点の直前のカンマ(1,000 単位の縮小)、色と条件の角括弧の順序、空の負数セクション(負の値を表示しない)を Excel と同じに扱う。小数は有効 15 桁の値で丸める。書式なしで負のゼロを -0 と表示していた。明示の General や @ の書式を持つ数値が、列幅に収まらないと #### になっていた(書式なしと同じく丸める) |
| 入力 | セル内エディタと数式バーで、50% は 0.5(% の書式付き)、2026/10/21・2026-10-21(時刻付きも可)は日付、13:45 は時刻として入力する。先頭の ' は文字列にする印として扱い、保存しない。文字列書式(@)のセルは打ったとおりの文字列で保存する。TRUE / FALSE はどの入力経路でも真偽値、NaN Infinity 1e400 は文字列になる。SetObjectValue に渡した float を書いたとおりの値で保存する(0.1f が 0.100000001490116 になっていた) |
| 編集 | ClearCell(Delete キー・内容のクリア・切り取りの元)で、セルの塗りや太字まで消えていた。Excel の「数式と値のクリア」と同じく、値と数式だけを消して書式を残す |
| 編集 | セル内エディタで、サロゲートペア(絵文字など)を 1 文字として扱う。数式の参照枠を動かしても絶対参照の $ を保つ。数式の編集中、別シートを指す参照に編集中のシートの枠が付いていた。文字を編集した後も単語単位のドラッグ選択が続いていた。ちょうど空白の手前まで収まる行で、最後の単語が次の行へ送られていた |
| 選択 | 矢印キーと Shift+矢印キーが、非表示の行・列で止まっていた |
| 行・列 | 行・列の挿入・削除で、値のない書式だけのセル、オートフィルターの列ごとの条件、条件付き書式の数式ルールの参照も一緒に動かす。すべての行(列)を削除すると 0 行のシートになって落ちていた。Excel と同じく大きさを保って空にする。負の位置・件数は何も変える前に ArgumentOutOfRangeException にする。列を挿入して 16,384 列を超えたシートで、罫線や結合セルが別の位置に描かれることがあった。列を削除して固定列だけが残ったシートで、描画が例外になっていた |
| 元に戻す | 行・列の削除を元に戻すと、オートフィルターの範囲・条件・隠した行と、削除で消えたアウトライン(グループ)も元どおりにする。シートの端にかかる貼り付けで、履歴の記録が例外になっていた |
| フィルター | オートフィルターが隠した行を、使用範囲の外にあるときやフィルターを外したときも必ず表示に戻す。条件フィルターの 100% のようなパーセントの値を数値として比べる |
| 条件付き書式 | 上位/下位・平均・カラースケール・データバー・アイコンセットは数値のセルだけを対象にする。規則を削除すると、後ろの規則が別の規則の統計で判定されていた |
| 結合 | 結合で消える数式セルを数式から外し、参照元を再計算する。シートの外にはみ出す範囲の結合と、既存の結合を切る複数範囲の結合は、何も変えずに拒否する。空の結合セルをコピーして貼り付けても結合を保つ |
| オートフィル | 値と数式が混ざった列でも、数式の参照を貼り付け先に合わせてずらす。時刻だけの書式のセルは 1 時間ずつ進める(Excel と同じ)。シートの端を越える範囲は端まで埋める。二方向以上に広がる範囲では何も書かない |
| アウトライン | 深すぎて追加を拒否したグループで、既存のグループまで失われていた。解除した後、残りのグループの段を詰め直す。シートの外にはみ出すグループは作らない |
| クリップボード | シートの外にかかる範囲のコピーと、シートの外への貼り付けで例外になっていた |
| ワークシート | 空のシート名と、大文字小文字だけ違う重複したシート名を拒否する。負の行・列番号と、負・NaN・無限大の行高・列幅は ArgumentOutOfRangeException にする(xlsx と reogrid-json の読み込みでは、不正な値を読み飛ばす) |
5.1.0 — 2026-10-16
追加
| 領域 | 内容 |
|---|---|
| 入力・保護 | データの入力規則、セルのメモ、シート保護(セル単位のロック) |
| データ | 検索/置換、複数範囲の選択 |
| テーブル | Excel の「テーブルとして書式設定」(テーブル)。組込 60 スタイル、縞(行・列)と先頭列・最終列の強調、集計行の色分け |
| スタイル | 交互行スタイル、テキストの回転・縦書き・インデントの描画、範囲へのスタイル適用 API(行と列が交差するセルは後から適用した方が勝つ。Excel と同じ) |
| 数値書式 | 和暦(元号)・分数・指数表記 |
| 数式 | 149 関数(27 追加)。SUBTOTAL AGGREGATE XLOOKUP XMATCH INDIRECT ADDRESS WORKDAY NETWORKDAYS WEEKNUM JIS ASC ほか(関数一覧) |
| 印刷 | 印刷タイトル、ヘッダー・フッター |
| 日本語フォントは使った文字だけを埋め込む(日本語を含む PDF が約 4 MB から数十 KB に)。日本語の太字・斜体を Excel と同じく合成して出力 | |
| XLSX | 列幅を、画面で測った標準フォントの数字幅で換算する XlsxColumnWidths.MaxDigitWidthMeasurer。WinForms では GdiTextMetrics.MaxDigitWidth、WPF・Avalonia では内蔵の表を画面の DPI で引く XlsxColumnWidths.ExcelMaxDigitWidth を渡すと、開いたブックの列が同じ画面の Excel と同じ幅になる |
| 描画 | EastAsianText — セルのフォントに無い日本語などの扱いを、独自の描画層でも組込の 3 つと揃えるための規則 |
| 保存 | ウィンドウ枠の固定・表示倍率・非表示シート・タブ色、ページ設定、画像を reogrid-json に保存。XLSX でオートフィルタ・シート保護・入力規則・メモ・テーブル・表示状態を往復 |
| ライセンス | 開発端末のライセンス認証(アクティベーション)を導入。新たに発行する Professional のキーは、1 本につき開発端末 1 台に割り当てる。発行済みのキーはそのまま使える。開発環境で ReoGrid を実行するにはライセンスキーによる認証が必要で、キーはカスタマーポータルからダウンロードできる |
修正
| 領域 | 内容 |
|---|---|
| XLSX | Excel で作ったファイルを開いて何も変えずに保存すると、列幅が変わっていた(既定の列が太くなる、手で決めた幅が 1px ずれる) |
| 書式 | 使用範囲の外のセルに罫線・数値書式を設定できなかった |
| 編集 | 色を塗ったセルでも、編集中はエディタが白で塗られていた |
| 表示 | 高さの低い行で、行ヘッダーの番号が隣の行と重なっていた |
| XLSX | 大きなファイル向けの遅延読み込み(OpenVirtual)で、画像・メモ・テーブル・条件付き書式・入力規則・オートフィルタ・シート保護・ページ設定・ヘッダー/フッターが読み込まれず、そのまま保存すると失われていた |
| XLSX | 開いたブックの列幅が Excel より狭かった。標準フォントが游ゴシック・MS Pゴシックなどのブックでは約 12%(設定なしで、100% の Excel と同じ幅になった)。150% などの拡大表示での約 5% は、XlsxColumnWidths.MaxDigitWidthMeasurer を設定すると解消する |
| 表示 | Arial など日本語を持たないフォントのセルで、日本語が WinForms では Excel より約 1 割大きく、WPF・Avalonia では別の書体で描かれていた。Excel と同じく MS ゴシックを、セルと同じ大きさで使う |
| 表示 | 隣のセルで止まるはみ出し表示で、Excel では収まる文字が「…」で省略されていた(止めたセルの手前まで描くようにした) |
| 編集 | セルを編集して何も変えずに確定すると、行が低くなっていた。1 行の文字を入力して確定したときも、既定の高さより低くなっていた |
| 編集 | WPF でダブルクリックして編集を始めると、クリックした位置から末尾までが選択されていた。3 つのコントロールとも、クリックした位置にキャレットを置いて編集を始めるようにした(WinForms・Avalonia はこれまで末尾から) |
5.0.0 — 2026-08-19
V5(ReoGrid One)の最初の正式版です。V4 との後方互換性はありません (V4 との違い)。
主な内容
| 領域 | 内容 |
|---|---|
| メモリ | 完全仮想化。約 16〜23 B/セル、空セルはコストを持たない |
| スタイル | セル ◁ 行 ◁ 列 ◁ シートの 4 段階継承。同じ書式は自動的に共有 |
| 数式 | 122 関数、依存再計算、クロスシート参照、定義名 |
| 数値書式 | Excel 書式コード(セクション・条件・色) |
| セル型 | 6 種(checkbox / dropdown / progress / button / hyperlink / sparkline) |
| 条件付き書式 | OOXML 準拠フルセット(iconSet 含む) |
| 表示 | 高 DPI、ウィンドウ枠の固定、ズーム、可視範囲だけを描画 |
| 編集 | セル内エディタ(日本語入力・数式の色分け対応) |
| データ | ソート(複数キー)、フィルタ(値リスト・条件)、オートフィル、アウトライン、元に戻す |
| I/O | reogrid-json・CSV・XLSX(ストリーミング)・PDF |
| 印刷 | UI 非依存の改ページエンジンを PDF / WinForms / WPF で共有 |
| プラットフォーム | WinForms / WPF / Avalonia + ヘッドレス |
パッケージ
unvell.ReoGrid.One / .One.Wpf / .One.Avalonia / .One.Core
(インストール)
今後の対応予定
現時点で未実装の機能です。実装され次第、対応するドキュメントページを追加します。
検討中
| 機能 | 備考 |
|---|---|
| チャート | フローティングオブジェクト基盤が前提 |
| 図形・テキストボックス | 画像は対応済み |
| データバインディング | ヘッドレスコアを前提に設計し直す |
| スレッド形式のコメント | 従来の「メモ」は対応済み |
| セル型の追加 | DatePicker / RadioButton / NumberInput / 画像系 |
既知の制限
| 領域 | 内容 |
|---|---|
| 数式 | 動的配列(spill)— FILTER SORT UNIQUE SEQUENCE LET LAMBDA |
| 数式 | 関数名のローカライズ、PHONETIC |
| 印刷 | 手動の改ページ、印刷範囲のうち特定ページだけの出力 |
| XLSX | 交互行スタイル、分割(非固定)ペイン |
| 元に戻す | アウトライン操作 |
| Avalonia | 印刷(PDF 出力で代替) |
各制限は該当する解説ページにも記載しています。
ライセンスについて
V4 用に発行済みのキーは V5 でもそのまま使えます。再発行は不要です (ライセンスキーの適用)。
ReoGrid v4
最新
v4.6.0
2026年10月16日 - 注意 開発端末のライセンス認証(アクティベーション)を導入しました。このバージョンから、新たに発行する Professional のライセンスキーは、1 本につき開発端末 1 台に割り当てられます。すでにお持ちのライセンスキーは、そのままお使いいただけます。
- ReoGrid を導入した開発環境で ReoGrid を実行するには、ライセンスキーによる認証が必要です。ライセンスキーはカスタマーポータルからダウンロードできます。
- 新機能 リッチテキストのセル内エディタを追加しました(WinForms / WPF)。編集中に文字の一部を選択し、その部分だけに太字・斜体・下線・取り消し線・フォント・サイズ・文字色を設定できます。Ctrl+B / Ctrl+I / Ctrl+U、または
Worksheet.ApplyStyleToEditingTextSelectionで設定します。- 書式が混在する内容は
RichTextとして保存されます。書式がそろっている内容は、Excel と同様にプレーンテキストとセルのスタイルとして保存されます。 - エディタは内容に合わせて広がり、中央揃え・右揃えに従います。ダブルクリックで単語を選択し、IME の変換ウィンドウはキャレットの位置に表示されます。
- 数式の編集中は、数式内の参照が、グリッド上の枠と同じ色でエディタ内でも色分けされます。v4.5 の数式ポイントモード(クリックで参照を挿入)も新しいエディタで使えます。
- 書式が混在する内容は
- 新機能 PDF 出力を追加しました(WinForms)。
PDFExporter.Exportで、ワークシートまたはブック全体を PDF に出力します。改ページ・用紙サイズ・余白・拡大縮小・ページの順序・ヘッダー/フッターなど、印刷とまったく同じようにページを分けるため、印刷の 1 ページが PDF の 1 ページになります。- ベクター図形と埋め込みテキストで出力するため、拡大しても粗くならず、文字を選択・検索・コピーできます。
- フォントは文書で使った文字だけを埋め込むため、日本語フォントでも数 MB ではなく数十 KB で済みます。セルのフォントで表示できない文字は、画面と同じく日本語などを表示できるフォントで出力します。
- セルの塗りつぶし、すべての罫線の種類、セルの文字(回転した文字や、日本語の禁則処理を行う折り返し・改行を含む)、行・列の見出し、画像を出力します。
- ReoGrid に内蔵しているため、追加の依存ライブラリは不要です。ライブラリは 1 つの DLL のままです。
- 新機能 印刷: ワークシートのヘッダー/フッターを印刷するようになりました(WinForms の印刷・印刷プレビュー)。ページ番号
&P、総ページ数&N、日付&D、時刻&T、シート名&Aと、先頭ページのみ別指定・奇数/偶数ページ別指定に対応します。Worksheet.HeaderFooterで設定し、用紙の端からの距離はPrintSettings.HeaderMargin/FooterMarginで指定します。 - 新機能 印刷: 「次のページ数に合わせて印刷」とページ中央への配置を追加しました。
PrintSettings.FitToPageとFitToPagesWide/FitToPagesTallで、Excel と同様に印刷範囲を指定のページ数に縮小します。CenterHorizontally/CenterVerticallyで、内容をページの中央に配置します。どちらも印刷と PDF 出力に反映されます。 - 改善 リッチテキストのセルの描画を高速化し、文字の間隔が通常のセルの同じ文字と一致するようになりました(WinForms)。
- 修正 Excel 入出力: XLSX ファイルのページ設定(用紙サイズ・倍率・次のページ数に合わせて印刷・ページの順序・中央揃え・枠線の印刷・印刷範囲)を読み込み、保存するようになりました。これまではファイルの設定にかかわらず、Letter 用紙・100% で使用範囲全体を印刷していました。また、縦向きのシートが横向きとして読み込まれていました。
- 修正 Excel 入出力: XLSX ファイルを読み込んで保存すると、印刷のヘッダー/フッターとページの余白が失われる問題を修正しました。また、右の余白に下の余白の値が読み込まれる問題を修正しました。
- 修正 印刷: セルの文字の最後の 1 文字が欠ける問題、折り返した文字が 1 文字早く折り返され、1 行目の上部が切れる問題を修正しました。折り返しは Excel と同様にセルの幅で行います。
- 修正 印刷: 拡大縮小率が 100% 以外のときに印刷・印刷プレビューを行うと、画面上の画像や図形の位置がずれる問題を修正しました。
- 修正 ライセンス: グレゴリオ暦以外の暦(タイの仏暦など)を使う環境で評価版のキーが期限切れと判定される問題と、評価期限がタイムゾーンによってずれる問題を修正しました。
- 変更 セル内エディタ(WinForms / WPF)は、従来の TextBox からリッチテキストのエディタに置き換わりました。エディタ内での Ctrl+Z にはまだ対応していません。また WPF では、UI オートメーションでエディタが TextBox として公開されなくなりました。
過去のリリース
v4.5.1
2026年7月9日- 新機能 複数シートを持つ XLSX ファイルの読み込み方法を選べるようになりました。
ReoGridControl.WorksheetLoadStrategy(または読み込みごとにExcelFileFormatArgument.WorksheetLoadStrategy)で指定します。LoadAll(既定): すべてのシートをLoad時に読み込みます(従来の動作)。DelayLoad: 開いているシートのみ先に読み込み、他のシートはタブをクリックするなど初回アクセス時に読み込みます。BackgroundDelayLoad:DelayLoadに加えてバックグラウンドで残りのシートを先読みするため、タブ切り替え時にはすでに読み込み済みであることがほとんどです。
- 変更 複数シートの XLSX ファイルが、既定で再びすべて先に読み込まれるようになりました。v4.5.0 で導入した暗黙的なシート単位の遅延読み込みは、大きなシートのタブをクリックした際に UI が一時的に固まることがあったため、
WorksheetLoadStrategy.DelayLoad/BackgroundDelayLoadで明示的に選択する方式に変更しました。既定のLoadAllは v4.4 以前と同様に、Load時にすべてのシートを読み込みます。 - 修正 描画: 描画中に表示領域が 1 行・1 列分広がった際に、まれにクラッシュする問題を修正しました。
- 修正 Excel 取り込み: 遅延読み込みで
MemoryStreamから読み込む際、保留中のシートが読み込まれる前に呼び出し側がストリームを破棄するとクラッシュする問題を修正しました(読み込み完了までファイルのバイト列を保持するようにしました)。
v4.5.0
2026年6月12日- 注意 ライセンスキーが必須になりました。v4.5 以降は、利用前に
SetLicense(string)で有効なライセンスキーを設定する必要があります。未設定の場合、グリッド全体にグレーのオーバーレイが表示され、マウス・キーボード操作、セル編集、印刷がブロックされます。v4.4 以前からアップグレードする際は、必ず利用前にSetLicense(string)を呼び出してください。- ライセンスキーはデジタル署名で改ざんを検証します。
- ライセンスキーは、カスタマーポータル(https://portal.unvell.com/)から取得できます。
- 新機能 Excel 互換の数式関数を 47 個追加しました。論理・検索・日付・統計・文字列など幅広いカテゴリに対応しています。
- 論理・条件:
IFERROR/IFS/SUMIFS/COUNTIFS/AVERAGEIFS - 検索・参照:
INDEX/OFFSET/CHOOSE - 数学・統計:
ROUNDUP/ROUNDDOWN/INT/TRUNC/SQRT/SIGN/PI/SUMPRODUCT/RANK/LARGE/SMALL/MEDIAN/STDEV/STDEVP/VAR/VARP - 日付・時刻:
DATE/DATEVALUE/TIMEVALUE/WEEKDAY/WEEKNUM/EDATE/EOMONTH/NETWORKDAYS/WORKDAY - 文字列:
TEXT/SUBSTITUTE/REPLACE/CONCAT/CONCATENATE/TEXTJOIN - 情報:
ISTEXT/ISNONTEXT/ISNA/ISLOGICAL/ISEVEN/ISODD - 日本語向け:
JIS/ASC/DBCS、および簡易版のPHONETIC
- 論理・条件:
- 新機能 数式のポイントモード編集に対応しました。数式の編集中にセルをクリックすると、編集を終了せずにカーソル位置へセル参照を挿入・置換できます。ドラッグで範囲に拡張、矢印キーで参照を移動でき、Excel / Google スプレッドシートと同様の操作感です。数式内の参照は色分けでハイライト表示されます。
- ハイライト枠の辺をドラッグして参照を移動、四隅をドラッグしてリサイズできます。
- 新機能 XLSX のアウトライン(グループ化)の読み書きに対応しました。行・列のアウトラインレベルと折りたたみ状態を Excel ファイルと相互にやり取りできます。
- 新機能
LazyLoadDataSourceを公開しました。データ件数・列数から範囲を自動推定するAddDataSource(source, mode)オーバーロードを追加しています。 - 改善 XLSX 読み込みの処理性能とメモリ使用量を大幅に改善しました。
- 独自のストリーミングパーサーを導入し、読み込み時の中間データ生成を抑えました。
- 多数のシートを持つブックは、開いているシートのみ先に読み込み、他のシートは初回アクセス時に展開します。
- 1,000 万セル規模のブックでメモリ使用量を約 37% 削減(3.9 GB → 2.5 GB)。さらに表示領域に応じたスタイル評価により、メモリを約 40%・読み込み時間を約 60% 削減。
- セルの読み込み処理を約 50% 高速化(表示形式パターンのキャッシュや参照解決の最適化など)。
- 改善 XLSX インポートの互換性を強化しました。
- 複数セクション/条件付きのカスタム表示形式に対応。
- テーマカラーの明暗が入れ替わって読み込まれる問題を修正し、正しい色で表示されるように。
- リッチテキストの書式(太字の有無)の解釈と、改行ごとの行分割に対応。
- セル位置に固定された画像(スタンプ等)と、埋め込み OLE オブジェクトのプレビュー画像の表示に対応。
- インライン文字列のセルをテキストとして読み込むように。
- 新機能 メモリ解放用の
Worksheet.ClearStyleCache(range?)を追加しました。大量データの読み込み後に、キャッシュ済みのスタイルを解放できます。 - 新機能
Worksheet.RowOutlineButtonLocation/ColumnOutlineButtonLocationを追加しました。行・列ごとにアウトラインボタンの表示位置を個別に指定できます(従来のOutlineButtonLocationは両方を設定)。 - 修正 数式: 関数名の入力途中にセルをクリックすると、まれにクラッシュする問題を修正しました。
- 修正 スタイル: スタイルを共有しているセルの 1 つを変更すると、共有する他のセルまで一緒に変わってしまう問題を修正しました。
- 修正 スタイル/フォント: フォントを継承するセルが、編集確定時や再描画時にサイズ・太さが変化してしまう問題を修正しました。
- 修正 印刷: 空のシートが 2 ページに分割される問題、ページ区切りをドラッグした際に例外が発生する問題、ページ端にちょうど収まる行・列で 1 セル分の余分なページができる問題を修正しました。
- 修正 Excel 取り込み: 分割ウィンドウをウィンドウ枠の固定位置として誤って扱い、シート読み込み全体がクラッシュする問題を修正しました。
- 修正 リッチテキスト(WinForms): 自動フィット時に行の高さが不足してテキストが見切れる問題を修正しました。
- 修正 CSV 出力後にシェルの挙動が乱れる問題を修正しました。
v4.4.0
2026年4月24日- 改善 描画の高速化: セルのスタイル情報や罫線描画に使うリソースをキャッシュし、画面の再描画を高速化しました。
- 改善 フォント処理の高速化: フォント名の検索やフォントオブジェクトの取得を効率化し、大量のセルを表示する際の動作を軽快にしました。
- 改善 数式の再計算を高速化: 数式の依存関係を追跡するアルゴリズムを刷新し、1 つのセルが多数のセルから参照されているケースで約 2.7 倍高速化しました。
- 改善 並べ替えの高速化: 並べ替え中の不要な処理を一時停止することで、大量データの並べ替えを大幅に高速化しました。
- 改善 条件付き書式の高速化: 評価タイミングを最適化し、セルを編集するたびに再計算するのではなく、画面描画時にまとめて処理するように変更しました。
- 改善 一括データ設定の高速化: 範囲へのデータ設定や貼り付け・元に戻す操作において、一括処理中の画面更新やイベント発生を抑制することで高速化しました。
- 修正 数式:
=+D25-F8-F14のように先頭にプラス記号を付けた数式が Excel と同様に動作するようになりました。 - 修正 数式: シート名にカッコや空白を含む場合の参照(例:
'BS(円)'!B3、'My Sheet'!A1)が正しく扱えるようになりました。 - 修正 並べ替え: 並べ替え時に、数式が正しく行と一緒に移動するようになりました(Excel と同じ動作)。
- 修正 条件付き書式: 条件付き書式を解除した際に、セルのスタイルが正しくクリアされない問題を修正しました。
- 変更
ConditionalStyleApplyCellsプロパティおよびConditionalStyleApplyCellCollectionクラスを削除しました。 - 新機能
Worksheet.HasConditionalStyle(row, col)/HasConditionalStyle(CellPosition)を追加しました。指定セルに条件付き書式が適用されているかを確認できます。 - 新機能
Cell.HasConditionalStylesプロパティを追加しました。スタイルのリストを生成せずに軽量に確認できます。
v4.3.14
2026年3月25日- 修正
NormalViewportControllerでのマウススクロール動作を修正し、水平および垂直スクロールの制限を正しく適用。 - 修正
ControlShareでの背景色適用の問題を修正し、ControlStyleの変更が即座に反映されるように修正。 - 新機能 スタイル内の色が変更されたときに通知するために、
ControlAppearanceStyleにStyleChangedイベントを追加。
v4.3.12
2026年2月18日- 修正 セルフォント指定時に Excel 出力に時間が要する問題を解消。
- 修正 RGF 保存/読み込みにおいて、数値書式引数を文字列パターン(例:
0.0)で指定した場合に正しく保持できるよう修正。
v4.3.11
2026年2月12日- 修正 v4.3.10 における不具合を修正(最終行および最終列の罫線が描画されない問題)。
- 修正 複数ページ印刷時、最終ページにおいて最終行および最終列のセルが印刷されない問題を修正。
v4.3.10
2026年2月7日- 新機能
WorksheetのDoActionを公開。 - 修正 同期時のスクロールバー位置を修正。
- 修正 印刷時のセルはみ出しを修正。
- 修正 Excel 出力時のフォントスタイルを修正。
v4.3.8
2025年12月25日- 修正 WPF リッチテキストでフォントキーが検出されない問題を修正し、フォント検索のフォールバックを追加。
- 修正 ヘッダードロップダウンボタンの描画を修正。
- 新機能
IsSuspendingScrollToCellプロパティを追加し、セルへのスクロールを一時的に禁止可能に。 - 改善 行/列の全選択挙動を改善し、特定の条件下で最後のセルへ強制的にスクロールされる問題を解消。
v4.3.4
2025年12月3日- 修正 WPF 版において、特定の条件下で RichText が正しく描画されない問題を修正。
- 新機能 ビルトインセルタイプで Undo / Redo をサポート。
- 修正 特定の条件下で、行ヘッダーの背景色が正しく表示されない問題を修正。
- 修正 非表示セルのガイドラインと選択表示を修正。
v4.3.3
2025年11月13日- 修正 RGF ファイル読み込み時、一部の非表示列を再表示できない問題を修正。
- 修正 特定の条件下でセルの数式が再計算されない問題を修正。
- 修正 ワークシートの並び替え後、
SheetTabが正しく描画されない問題を修正。 - 修正
DropdownCellがコピーできない問題を修正。 - 修正 セル固定時、特定の条件下でスクロールバー位置が正しく表示されない問題を修正。
v4.3.2
2025年11月6日- 修正 引数を持たない数式(例:
ABS(),COS())で例外が発生する問題を修正。 - 修正 セル内テキストの折り返し(改行)に関する不具合を修正。
- 新機能 ヘッダーセルのテキスト折り返し機能に対応。
- 修正 アウトライン(グループ)のレベルボタン文字が拡大・縮小時に正しく描画されない問題を修正。
- 修正 リッチテキスト描画時のスケーリング不具合を修正。
- 修正 Excel 読み込み時に列幅が正しく取得されない問題を修正。
- 修正 ヘッダーセルでまれに発生していたエラーを修正。
- 修正 WPF 版でシートタブが正しく表示されない問題を修正。
- 新機能
SheetTabFontプロパティを追加。 - 新機能
Worksheet.Tagプロパティを追加。 - 修正 シートタブをドラッグ&ドロップで移動する際の表示問題を修正。
- 修正 罫線スタイル
Dottedが Excel 出力時にDashedに変わる問題を修正。 - 修正 Excel 出力時、フォントサイズ未指定セルが 10.5 → 12.5 に変化する問題を修正。
v4.3.0
2025年10月6日- 変更
IsValidAddressをIsValidAddressFormatにリネーム。より明確な名称に変更。 - 新機能
Worksheet.IsValidAddressを追加。アドレス文字列をより厳密に検証可能に。 - 新機能
IsValidCellAddress,IsValidRangeAddressを追加。アドレスの有効性を確認しながら座標オブジェクトを安全に生成でき、パフォーマンスも向上。 - 改善 ReoGrid 内部処理において
IsValidCellAddress/IsValidRangeAddressを利用することで堅牢性を向上。 - 修正 遅延ロード(Lazy Loading)時にズーム操作を行うとセルが正しく読み込まれない問題を修正。
- 改善
ADDRESS関数を強化。参照セルの値から動的にアドレスを生成できるよう改善。 - 改善
INDIRECT関数を強化。セル参照の管理をより正確にし、小文字アドレスも正しく解釈できるよう改善。 - 修正 ズーム時に行番号テキストが拡大縮小されない問題を修正。
- 修正 一部の
RichFormatTextを含む Excel ファイルを読み込み・書き出しした際にファイルが破損する問題を修正。 - 変更 対象フレームワークを
net8.0-windows7.0からnet8.0-windowsに変更。より汎用的な .NET 8 Windows 環境に対応。
- 改善 ワークシート複製(クローン)後の再計算を改善。
- 共有数式・依存チェーンを含むシート複製直後に計算結果がずれたり未更新になるケースを解消。
- クローン生成時に参照再マッピングと再計算順序を整理し、即時に一貫した表示を保証。
- 多くの場合、既存コード側で追加の
Recalculate呼び出しが不要に。必要に応じて明示再計算は従来どおり可能。
- 改善 罫線(Border)Excel 出力の信頼性向上。
- 空/透明境界を余計な "thin" として書き出さないよう正規化。
- Dotted / DashDot / DashDotDot / medium* 系とのマッピングを修正し、再インポート時の形状崩れを防止。
- 「外側のみ」設定時に角セルへ不要な反対側線が復活する問題を解消。
- 注意 過去バージョンで「外側のみ」設定後に意図せず付いていた内側線を利用していた場合は、明示的に設定し直す必要があります。
- 注意 複製直後に独自で
Recalculateを呼んでいたコードは冗長になる可能性あり(性能チューニング目的なら残しても可)。
- 改善 Excel 互換性向上:
0をFALSEとして解釈可能に変更。IF関数などで 0 → FALSE、0 以外の数値 → TRUE として評価。 - 新機能 ルックアップ関数を実装。
VLOOKUP: 完全一致/近似一致、数値・文字列キーに対応。第4引数でTRUE/FALSEのほか1/0も解釈。HLOOKUP: 横方向検索に対応。MATCH/XMATCH: 検索位置を返す関数。方向指定(0,1,-1)に対応。XLOOKUP: 柔軟な検索を実現。if_not_found、一致モード、検索モードをサポート。
- 改善 演算子の改善: 乗算演算子(
*)で数値文字列を数値に変換して計算可能に(例:"10"*2 → 20)。 - 改善 エラー処理の改善: ゼロ除算を
InvalidValue(Excel 互換の#DIV/0!)として処理。FormulaStatusがNormalではなくInvalidValueとなるよう修正。 - 注意 近似一致を利用する場合、Excel と同様にデータが昇順または降順にソートされている必要があります。
- 改善 安定性の向上。
- 改善 描画性能の向上。
- 新機能 .NET 8 および .NET Framework 4.8 に対応。
- 修正 書式設定で赤字指定が正しく表示されない問題を修正。
v4.0.0
メジャーリリース- 新機能 Lazy Loading 超高速のデータ読み込みモードに対応。
- 新機能 複数行ヘッダーに対応。
- 改善 WPF 版を大幅に強化。
- 新機能 データソースの仕組みを追加。
- 改善
DropdownListCellの強化。 - 新機能
ComboListCellを追加(自動補完機能にも対応)。 - 新機能 Excel のカスタマイズ書式パターンに対応。
- 改善 アウトラインの強化。
- 新機能 カスタマイズ条件フィルターに対応。
- 新機能 条件付きスタイルに対応。
- 新機能 文字列の検索機能を追加。
- 改善 セルロック機能の強化。
- 新機能 入力制限(バリデーション機能)を追加。
- 新機能 ワークシートのデータを 0列・0行に対応。
- 改善 描画のさらなる高速化。
- 改善 浮動小数点型の計算精度補正。
- 新機能 WinAppDriver を介した自動テスト対応。
- 改善 より多くの数式に対応。
ReoGrid v4 の主要な新機能については
新機能ページ