Xlsx を SpreadsheetML に変換する方法
Sheetize XLSX‑to‑SpreadsheetML コンバータ for .NETは、最新の XLSX スプレッドシートを、古い Office バージョンや XML を中心としたツールで使用される XML ベースの SpreadsheetML 形式に変換するシンプルな API を提供します。XSLT パイプラインへデータを供給したい場合、レガシーシステム向けレポートを生成したい場合、あるいは単にスプレッドシートをプレーンな XML としてアーカイブしたい場合でも、Sheetize は低メモリでスタイル、数式、メタデータを完全に保持しながら変換を行います。
主な機能
XLSX から SpreadsheetML へ変換
名前空間のカスタマイズ、インデント(pretty‑print)オプション、シートの選択的出力などを指定できる標準化された SpreadsheetML スキーマ(Office Open XML Spreadsheet)へワークブックをエクスポートします。
書式と数式を保持
セルのスタイル、結合領域、数式定義すべてが変換後の XML に残ります。生成されたファイルは Excel で再度開くことができ、XML ツールでもロスなく処理できます。
ストリーミング対応
大規模なワークブックでもメモリ使用量を最小限に抑えて処理できるストリーミング方式をサポート。サーバーサイドのバッチジョブやクラウドファンクションに最適です。
詳細手順
XLSX → SpreadsheetML ワークフロー
- コンバータの作成:
SpreadsheetConverterのインスタンスを生成します。 - オプションの設定:
SpreadsheetSaveOptionsを使用し、対象名前空間、インデント、非表示シートの含め方などを指定します。 - パスの指定: ソースの
.xlsxファイルと出力先の.xml(または.spreadsheetml)ファイルパスを設定します。 - 変換の実行:
Processメソッドにロードオプションとセーブオプションを渡して実行します。
例 – XLSX ワークブックを整形された SpreadsheetML に変換する
using Sheetize;
var loadOptions = new LoadOptions
{
InputFile = @"D:\Data\report.xlsx"
};
var saveOptions = new SpreadsheetSaveOptions
{
OutputFile = @"D:\Data\report.xml"
};
SpreadsheetConverter.Process(loadOptions, saveOptions);形式サポートの拡張
- ライブラリは SpreadsheetML から XLSX への逆変換も可能で、ラウンドトリップ変換を実現します。
- CSV、TSV、JSON へのエクスポートも提供しているため、たとえば XLSX → SpreadsheetML → XSLT → HTML といったエンドツーエンドのパイプラインを簡単に構築できます。
Sheetize を使えば、最新の Excel ファイルを古典的な XML 形式に変換する作業はあっという間です。単発スクリプトから本番レベルのサービスまで、幅広く活用できます。