V5 ドキュメントはプレビュー版です。正式リリース(2026 年 8 月 19 日)まで内容が更新されることがあります。
V4 V5

V5 のコアは UI に依存しません。unvell.ReoGrid.One.Corenet10.0 を対象とし、 依存パッケージがなく、Windows / Linux / macOS のいずれでも動作します。

V4 ではモデルがコントロールと密結合していたため、サーバー側での利用は現実的ではありませんでした。 V5 で分離されたのはこの用途を成立させるためです。

何ができるか

.Core パッケージに含まれるもの:

  • Workbook / Worksheet(ストレージ・スタイル・結合・罫線・リッチテキスト)
  • 数式エンジン(122 関数・依存関係にもとづく再計算・クロスシート参照・定義名)
  • 条件付き書式
  • I/O — reogrid-json・CSV・XLSXPDF
  • 改ページ・印刷レイアウトの計算

含まれないもの: 画面表示・マウス/キーボード操作・セルエディタ(これらは UI パッケージ側)。

XLSX を読んで PDF にする

using unvell.ReoGrid.Core;
using unvell.ReoGrid.IO.Excel;
using unvell.ReoGrid.IO.Pdf;

var workbook = XlsxReader.Read("input.xlsx");

// Excel が保存したキャッシュ値をそのまま読み込むため、ロード時に再評価はしない。
// 値を差し替えたときだけ再計算する。
var sheet = workbook[0];
sheet.SetNumber(1, 1, 500);
sheet.Recalculate();

PdfExporter.Export(workbook, "output.pdf");

PDF には日本語フォント(IPAexGothic)が埋め込まれるため、サーバーにフォントを インストールしていなくても日本語が出力されます。

ゼロから作って XLSX で書き出す

using unvell.ReoGrid.Core;
using unvell.ReoGrid.Core.Style;
using unvell.ReoGrid.IO.Excel;

var workbook = new Workbook();
var sheet = workbook.AddWorksheet("売上");

sheet.SetText(0, 0, "月");
sheet.SetText(0, 1, "金額");
sheet.SetRowStyle(0, new StyleRecord { Bold = true });

for (int i = 0; i < 12; i++)
{
	sheet.SetText(i + 1, 0, $"{i + 1}月");
	sheet.SetNumber(i + 1, 1, 1000 * (i + 1));
}

sheet.SetText(13, 0, "合計");
sheet.SetFormula(13, 1, "SUM(B2:B13)");
sheet.SetNumberFormat(new RangePosition(1, 1, 13, 1), "#,##0");

XlsxWriter.Write(workbook, "sales.xlsx");

大きな XLSX を部分的に読む

シート全体をメモリに載せずに扱う場合は OpenVirtual を使います。

using var virtualBook = XlsxReader.OpenVirtual("large.xlsx", SheetLoadMode.OnDemand);

読み込みは XmlReader によるストリーミングで、メモリ使用量は実在するセル数に比例します (シートの宣言上の寸法ではありません)。

CSV と JSON

using unvell.ReoGrid.Core.IO;

// CSV(RFC 4180)
CsvIO.Read(sheet, File.ReadAllText("data.csv"));
File.WriteAllText("out.csv", CsvIO.Write(sheet));

// reogrid-json — Web 版(reogrid-web)と相互運用できる形式
string json = ReoGridJsonIO.Write(workbook, pretty: true);
var restored = ReoGridJsonIO.Read(json);

ライセンス

ヘッドレスでも ライセンスキー の適用対象です。 未適用の場合、PDF 出力に透かしが入り、XLSX には通知シートが追加されます。 出力自体は行われるため、評価はそのまま進められます。

using unvell.ReoGrid.Core.License;

ReoGridLicense.SetLicense(Environment.GetEnvironmentVariable("REOGRID_LICENSE")!);

次に読む

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