RAD Studio 向け Excel ライブラリ

Office オートメーションなしで Excel ワークブックを読み・書き・書式設定・エクスポート

HotXLS は、Delphi および C++Builder アプリケーション向けのネイティブ Object Pascal ライブラリです。クラシック XLS のワークフローも最新の XLSX ファサードもライブラリが直接処理するため、ワークブック API、ワークシート編集、リッチな書式設定、エクスポート ヘルパー、デモ、オフライン ドキュメントがすべてパッケージに揃っています

ワークブック スナップショット XLS + XLSX
値
スタイル
エクスポート
数値
罫線
CSV
日付
テーマカラー
HTML
数式
入力規則
RTF

現在の機能スナップショット

現在の HotXLS は、初期からある XLS ファサードと専用の XLSX エンジンを組み合わせています。そのため、既存のコードはクラシック API を使い続けられ、新しいプロジェクトは OOXML の機能を直接扱えます

ネイティブなワークブック I/O

Delphi / C++Builder のコードから Excel ワークブックを直接作成・オープン・編集・保存できます。Microsoft Excel のインストール、COM オートメーション、外部の表計算プロセスは一切不要です

SaveAs(FileName, xlsxOpenXMLTemplate) または対応するストリーム オーバーロードで、マクロを含まない XLTX テンプレートを保存できます。ストリーミング出力にも対応しています。既定の保存形式は従来どおりです

クラシック XLS ファサード

Excel 97-2003 (.xls) ワークブック向けの成熟した API です。クラシックのオブジェクト モデルをフルカバーし、高忠実度の BIFF8 ラウンドトリップに加え、旧形式の Excel 2.0/3.0/4.0 (BIFF2-4) ファイルも値の読み取りに対応しています

  • 大きな依存関係グラフを再構築する際、インデックス化された数式出力区間により先行行の繰り返し走査を回避できます。配列出力への参照やワークシートをまたぐ依存関係も含まれます
  • クラシック XLS の保存では、読み込み済み・計算済みの数式キャッシュがそのまま保持されます。共有数式や配列数式のルートも対象です。キャッシュが欠落している場合は計算フォールバックのまま残り、明示的な Recalculate を呼べば既存の値を更新します
  • スカラーの定義名参照は、数式セルの位置で 1 行または 1 列の範囲と交差します。一方、集計やルックアップの範囲引数は範囲全体を保持します。再計算では誤った範囲循環を避け、確定済みのルックアップ キャッシュを優先し、整数と浮動小数点が混在する演算でも浮動小数点の精度を保ちます
  • XLSX のラウンドトリップでは、動的な印刷範囲の数式、修飾付きの範囲共用体、必須のゼロ値フォネティック フォント インデックスが保持されます。生成パーツと保存パーツは一意のコンテンツ タイプ宣言を共有し、カスタム プロパティと不透明なルート リレーションシップは別々のリレーションシップ ID を維持します
  • クラシック XLS では、インポート時に存在しなかった余白レコードは、対応する余白を明示的に設定するまで「無い」まま維持されます。新しいワークブックの既定の余白出力は変わりません
  • AGGREGATE はキャッシュにないエラーと入れ子の選択を独立して処理し、オプション 0 〜 7 に対して参照と計算済み配列で別々のセマンティクスを持ちます
  • XLSX のラウンドトリップでは、未変更のグラフ XML とグラフ アンカーのオフセット、条件付き書式のフォント名・サイズ・スキーム・明示的なスタイル フラグと RGB カラー、そして余白だけが設定されている場合の「未指定」ページ方向が保持されます
  • フルオブジェクトモデル:ワークブック、ワークシート、範囲、数式、書式設定、画像、ハイパーリンク、定義名、保護、ページ設定、およびレポートエクスポート
  • クラシックの列メタデータは、アウトラインの折りたたみマーカーを非表示状態やグループ化レベルとは独立に公開し、素の XLS ラウンドトリップ、列書式のコピー、ワークシート コピーを通じてそれらを保持します
  • クラシックのページ設定では HasSetupRecord と PrinterSettingsInitialized が公開され、手を付けていない BIFF Setup レコードはバイト単位で保持され、存在しないレコードは存在しないまま維持されます。プリンター依存のフィールドは、対応するセッターが要求するときにだけ初期化されます
  • XLS→XLSX および XLSX→XLS の変換では、型付きのページ設定と不透明なプリンター ドライバー バイト列を独立して運び、標準フィールドを重複するプライベート既定値より正とし、表現できない BIFF8 設定は移動先の書き込み前に拒否します
  • クラシック XLS と XLSX のワークブックは、一致する SaveExternalLinkValues と UpdateLinks ポリシーを公開します。キャッシュされた外部ワークブックの値は、リンク定義やメモリ内キャッシュを削除せずに省略でき、無効なまま手を付けていないソース宣言はロスレスのまま残り、クロス フォーマット変換では正当なポリシー値が維持されます。更新設定がファイルやネットワーク アクセスを起動することはありません
  • XLSX ワークブックは Web アドイン作業ウィンドウの正確な検出・カウント・原子的な削除を公開します。削除処理は変更前に上限付きの内部リレーションシップ クロージャを検証し、別のリレーションシップから共有されているパーツは保持し、所有するリレーションシップ パーツと古いコンテンツ タイプ エントリを削除し、圧縮ソース コピーによる復活を防ぎ、冪等に動作します。クラシック XLS と ODS では、パッケージを走査せずにこの操作を非対応と報告します
  • クラシック XLS と XLSX のワークシートは、TXLSPanePosition によるペインを認識する選択と 1 始まりのスクロール メソッドを一致させて公開します。TryGetWindowScroll と ScrollWindow は共有される上下左右の軸を各フォーマット固有の 2 レベル ビュー状態へマップし、保存・オープン・ワークシート コピーを通じて保持し、ペインの欠落や不正な座標は原子的に拒否します。選択スナップショットは順序付き・重複あり・呼び出し側所有のまま維持され、行全体や列全体の構造編集では、アクティブ領域の同一性を保ちつつ決定論的な生存セルと境界セルフォールバックで全ペインを再マップします。大きな領域の操作は償却線形のままです。クラシック XLS はさらに、連続する選択レコードを集約し、未変更または不正なレコード本体を保持し、不正なグループを xlsDiagnosticSelectionRecordInvalid で報告し、1369 領域を超える選択をチャンク分割します
  • エンジン中立の lxOutline ユニットは、ソート済みスパース スパンから行または列のアウトライン ジオメトリを構築し、O(log n + k) で summary-before / summary-after ノードを検出し、ノードの折りたたみ、表示レベル変更、入れ子の子の保持、再帰的な子状態更新について、未使用のワークシート座標を走査しない圧縮された冪等なプランを作成します。両ワークシート エンジンは同じノード照会・制御メソッドを公開し、OpenDocument のグループはネイティブの表示状態を保持したまま XLSX の summary-node マーカーへ変換されます
  • クラシック XLS と XLSX のワークブックは、公開カラー インデックス、BIFF icv 値、OOXML インデックス カラーに対して、同じ副作用なしの ResolveIndexedColor 契約を公開します。パレット・自動・システム・無効の各トークンは区別され、罫線インデックス 0 は「未指定」の意味を保ち、ARGB 出力は正規化され、OS カラーは明示的な呼び出し側コールバックを通じてのみ解決されます
  • 両ワークブック エンジンは、変更を考慮する OKLab キャッシュに裏付けられた副作用なしの NearestIndexedColor 照会を公開します。56 個の物理 BIFF パレット エントリだけを検索し、距離と完全一致のメタデータ付きで公開インデックスと物理インデックスを返し、部分的なアルファを拒否し、同距離のタイは最小の公開インデックスに解決します
  • 両ワークブック エンジンは、56 個すべての物理パレット スロットについて、決定論的で副作用なしの ScanIndexedColorUsage インベントリを公開します。正規化された ARGB 値、定義数と参照数、利用者種別、そしてスタイル・スパース セル・ワークシート オブジェクト・グラフ・コメント・条件付き書式にわたる保存ロックを含み、未使用のセルを実体化しません
  • 両ワークブック エンジンは、変更を行わない BuildBiffPalettePlan プレビューを公開します。インデックス カラーの利用者を保護し、直接色と解決済みテーマカラーを描画時の頻度で集計し、既存の完全一致を保持し、OKLab で決定論的に色をマップし、ソースの識別情報・スロット変化・完全一致カバレッジ・重み付き誤差・あふれ量の量子化を報告します。ワークブックや保存動作は変わりません
  • 両ワークブック エンジンは、現在の 56 スロット プランを ApplyBiffPalettePlan で検証して原子的に適用できます。古い入力や改ざんされた入力は変更前に拒否され、知覚マッチャーは一度だけ再構築されます。クラシック ワークブックはさらに明示的な BiffPaletteSavePolicy を提供します。既定では従来の出力を保持し、最適化モードは BIFF8 だけに適用され、失敗またはキャンセルされた保存では元のパレットが復元されます
  • 両ワークブック エンジンは、幅・高さ・複数行の行間・セル余白・画面スケーリング・計測 DPI を制御する検証済みの TXLSRenderCalibration 値を公開します。代入は原子的で、取得は独立した操作スナップショットを返し、既定値は決定論的です。実行時の設定がシリアライズされたり、それ単体でワークシートのジオメトリをリサイズしたりすることはありません
  • 両ワークブック エンジンは、操作ごとに所有される IXLSRenderGeometry サービスを作成します。イミュータブルなキャリブレーション、ワークブック生成、バックエンド、完全なフォント シグネチャ、折り返し幅、テキストが、上限付きのローカル メトリック キャッシュ識別情報を構成します。GDI 計測と、ピクセル・ポイント・列幅・MDW・使用可能セル幅の変換を共有することで、AutoFit のプロセス グローバルな DPI と基準幅キャッシュが排除され、画面スケーリングが出力座標のスケーリングに混入しません
  • クラシック XLS と XLSX の AutoFit は操作ごとに 1 つのレンダリング ジオメトリ スナップショットを取得し、キャリブレーション済みのフォント計測、折り返し、行間、セル余白を適用します。ページネーションはビルドごとに同じワークブック ローカルのジオメトリを取得するため、既定のページ サイズは安定し、後からのキャリブレーション変更は明示的な再構築を要求し、ページ計算が保存済みの行高や列幅を書き込むことはありません
  • PDF、SVG、ビットマップ、印刷プレビュー、ワークブック ビューアのページネーションは、それぞれ自分のレンダリング バックエンドを識別し、操作全体を通じてイミュータブルなワークブック キャリブレーションを保持します。共有のページ テキスト フィッティングと SVG 折り返しは、プロセス グローバルな計測オブジェクトの代わりに、操作ローカルの上限付きメトリック キャッシュを完全なフォント スタイルと文字セット識別情報付きで使います
  • TDataToXLSデータセットエクスポートでは、ヘッダー、データ行、コールバック、および列幅を揃えたまま、選択したフィールドのみを含めたり、機密フィールドを除外したりできます
  • 自動的な XLSX 動的配列はスピル セルのサイズ変更と所有を行い、#SPILL! でユーザーの障害物を保持し、A1# と単項 @ をサポートし、再オープン後に所有権を回復します。固定の CSE 数式は生の範囲算術を要素ごとに評価します
  • 複数配列の MAP と計算配列の FILTER は要素ごとのエラーを保持し、XLSX のリッチ値メタデータは型付きの #SPILL! と #CALC! エラーを保持します
  • GetConversionReport は既知のターゲット形式の損失を変更なしで一覧化し、オプトインの SaveAsChecked は書き込み前にそれらを拒否できます。明示的な xlsxOpenXMLMacroEnabledTemplate 出力は XLTM パッケージを作成し、既存の VBA を保持します
  • 呼び出し側が供給する TXLSQueryTableProvider 実装は、固定スキーマのクエリテーブル データをトランザクション的に更新し、上限付きの結果、進行状況、キャンセル、ロールバック付きでテーブルとフィルターの範囲をサイズ変更します
  • 自動データベース クエリは、明示的に型付けされたリテラルまたは保存されたワークシート セルから、Unicode、空テキスト、日付、null、利用可能な数式キャッシュを含む有界な位置パラメータをバインドします。Jet と ACE はロケール依存のタイムスタンプ変換なしで型付き日付を保持し、更新は結果をトランザクション的に適用します
  • 自動テキスト クエリは、明示的なデコード、型付きフィールド、スキップ列、構成されたヘッダーと開始行、有界なトランザクション更新で区切り形式または固定幅のファイルを更新します。固定幅の位置はデコードされた UTF-16 コード単位を使用し、パディングを取り除き、短いレコードでは宣言された列を保持します
  • インポート検証は、保存された値と数式キャッシュに対して、厳密なスカラー型、数値と日付の境界、複合一意性、列間の関係をチェックし、構造化されたセル アドレス付きの違反と、明示的な注釈または修正ワークブック操作を備えます
  • CELL は XLS と XLSX の両方で、実際に参照されるファイルの識別情報、サポートされる基本数値書式、配置、ロック状態、列幅を読み取ります。INFO("recalc") はワークブックの計算モードを読み取り、利用できない Excel アプリケーション環境情報は明示的なエラーを返します
  • 繰り返しのレポート バンドは識別子を再マップした完全なスレッド化会話をクローンし、共有ネイティブ ページネーションは結合セル スパンを描画します。グラフ キャッシュは編集と再計算の後、サポートされるローカル範囲から更新されます
  • 数式計算はクラシック XLS 評価器を共有し、プロセス全体およびワークブック ローカルのユーザー関数レジストリ、ワークブック ローカルの上書きセマンティクス、ロックフリーのハンドラ呼び出し、OnUserFunction / OnUserFunctionEx コールバックを備えます。一般的な Excel のテキスト・日付・稼働日・エンジニアリング/基数変換・ビット演算・統計・集計・数学・動的配列関数に対応し、セルごとのエラーを持つブロードキャスト配列演算子、多変数の完全な LINEST / LOGEST 行列、整形された TREND / GROWTH 予測、安定した行・列の SORT、独立した方向と配列キーを持つ安定した複数キーの行・列 SORTBY、シングルトン ブロードキャストとローカル エラーを備える配列対応の CEILING.MATH / FLOOR.MATH 丸め、ローカル エラーとオーバーフロー安全な大きな入力分岐を備える安定した配列対応の COT / ACOT / COTH / ACOTH / CSC / CSCH / SEC / SECH 評価、オーバーフロー チェック付きの COMBINA / PERMUTATIONA 繰り返し計算、メモリ上限付きの MUNIT 単位行列、Unicode スカラーの UNICHAR 変換、BAHTTEXT によるタイ通貨テキスト、対象の再計算なしで参照を保持する ISFORMULA 検査、ハッシュ インデックスの行・列 UNIQUE、スピルする FREQUENCY 結果、対数二分探索の XMATCH / XLOOKUP、ISOMITTED による省略可能引数の検出、ARRAYTOTEXT / VALUETOTEXT の配列変換、検証済みの XIRR / XNPV 計算、PDURATION / RRI の投資期間と成長率、期間が端数の VDB 減価償却に対応します。さらに、定義名から呼び出せて LET 内で字義通りにキャプチャできる、完全な LET バインディングと LAMBDA クロージャを備えます
  • エンジン中立の EvaluateFormulaAt は、明示的なワークシート セル コンテキストで A1 または R1C1 の数式テキストを評価します。セル モデル、キャッシュ、dirty 状態、アクティブ シート、依存関係グラフは変更しません。型付きの結果は数式エラー、配列、空の値、揮発性、キャンセル、外部参照の認可、安定した失敗カテゴリを保持し、IXLSFormulaEvaluationTemplate は設定可能な数式長・ステップ・再帰・配列メモリの予算の下で、イミュータブルなコンパイル済みアンカーを対象セル間で再利用します
  • クラシック XLS と XLSX は、一致する変更なしの ValidateFormulaEntry メソッド、ワークブック レベルの FormulaEntryPolicy、セルと定義名にわたるパース済みの AuditFormulaSymbols スキャンを公開します。検出結果とその順序を保ったまま、疎なクラシック XLS ワークブックを以前より速くスキャンできます。空入力そのもの、空文字列を返す数式、未知の関数、未知の名前、構文エラー、不正なターゲット、ターゲット形式の制限は区別して扱われ、通常の数式代入では厳格な拒否か保持かが原子的に適用されます。保持された未知のシンボルは #NAME? として評価・伝播し、UDF や定義名の変更は古い依存関係を無効化します。クラシック BIFF は保持された未知の呼び出しをアドイン ユーザー関数として保存し、検証は登録済みまたはコールバックのユーザー関数、字義通りおよび定義名のラムダ、レポート プレースホルダ、登録済み外部リンク、有効な構造化参照を、ハンドラを呼び出さずに認識します。危険な外部またはマクロ形式の関数コールバックは、明示的に認可されない限り引数評価の前にブロックされたままです
  • TXLSFormulaTokenStream、ParseFormulaTokens、GetFormulaTokens、FormulaTokensToText、SetFormulaTokens により、両ワークブック エンジンでロスレスな数式トークン検査と保護付き変更が可能です。呼び出し側所有のストリーム、読み取り専用のトークン射影、素の BIFF ペイロード、独立した参照フラグ、クローン作成、原子的な参照置換、コンテキストの由来情報、書き戻し前の検証を備えます
  • 1 変数 (行)、1 変数 (列)、2 変数の What-If データ テーブルに対応し、依存関係を切り離した再計算、削除された入力のエラー、構造編集、ワークシート コピー、BIFF8 ラウンドトリップをサポートします
  • ForEachCell、FindText、ReplaceText、WriteCells および数値・文字列・Variant の行・列ライター メソッドによるセル スキャン、テンプレートの検索と置換、コールバックによる範囲充填、型付き配列の直接書き込みに加え、キャッシュ値を残したまま数式を計算結果へ凍結する、シート全体または単一セルの ConvertFormulasToValues を備えます
  • IXLSFormulaCacheReader と各ワークブック エンジンの CreateFormulaCacheReader によるエンジン中立の数式キャッシュ検査は、キャッシュの有無、読み込み済みか計算済みかの由来、そして空白・数値・日時・文字列・ブール・エラーの種別を報告します。数式の評価、ユーザー関数の呼び出し、トークンのデコンパイル、ワークブック状態の変更は行いません。ライフタイム リースによりワークブック破棄後のリーダーは安全に無効化され、共有数式のメンバーは独立したキャッシュを保持し、XLSX と ODS は型付きエラーと明示的な空白キャッシュを再オープン後も保持します
  • クラシックの IXLSWorkbook.CreateReadOnlyView と XLSX の IXLSXWorkbookOwner.CreateReadOnlyView は、定数時間で共有モデルの IXLSReadOnlyWorkbookView インスタンスを作成します。ビュー ローカルのアクティブ シート、値による保存セル スナップショット、書き込み可能オブジェクトの非公開、既定での数式結果キャッシュ、オプトインの数式テキストや隔離された数式評価を備えます。並行するビューは再帰状態、スカラー/配列キャッシュ、XLSX のコンパイル済み数式を非公開に保ち、XLSX の外部評価はファイル ローカルのリンク キャッシュだけを読み、パックされたセルは実体化されず、すべてのビューは変更前にモデル書き込みを拒否する読み取りリースを保持します
  • 2.384.51 から、TXLSReadOnlyCellSnapshot.SheetName は共有 UnicodeString ストレージを背後に持つ読み書き可能な WideString プロパティになり、セルごとの名前アロケーションが減っています。通常の読み取りと代入の構文は変わりませんが、素のフィールド アドレスと以前のレコード レイアウトはサポート対象外のため、呼び出し側は再コンパイルが必要です
  • TXLSWorkbookWorkspace は、各エンジンの CreateWorkspaceWorkbook が返す取り消し可能なクラシック XLS / XLSX / ODS アダプタを受け入れ、完全なパスまたは IRI の識別情報を保持し、外部ワークシートを位置より先に名前で解決し、明示的なライブ登録、呼び出し側が制御する任意の識別情報ごと 1 回のローダー、型付きファイル キャッシュ、そして #REF! によって外部数式を評価します。並行するロード要求は 1 つの結果を共有し、型付き診断が失敗とリソース上限を露出させ、互換性のある登録メソッドは両ワークブック ファサードで引き続き利用でき、破棄されたターゲットは安全に切断され、再計算がファイルやネットワーク リソースを暗黙的に開くことはありません
  • TXLSWorkbookWorkspace.BuildDependencyGraph は、登録されたクラシック XLS / XLSX / ODS モデルから 1 つのワークブック間数式グラフを抽出します。ワークブックとワークシートの完全な識別情報を保持し、記号的なローカルおよび外部の定義名を保存し、可能な場合はローカル名を具体的な依存関係へ解決し、大きな矩形範囲をコンパクトな区間として保存します。行区間ツリーがエッジ構築と依存ルックアップを高速化し、グラフ構築はパックされた XLSX ストレージを実体化せずに読みます
  • TXLSWorkbookWorkspace.Recalculate は共有の依存関係グラフを保持して増分的に dirty 化し、非循環の数式ノードをワークブック間のトポロジカル順でスケジュールし、無害な双方向ワークブック リンクを拒否することなく、真に強連結な数式サイクルを拒否し、明示的なヒット・ミス・無効化・ブロックされたノードの診断付きでパス ローカルの外部セル キャッシュを共有します。同じワークスペースへの呼び出しは直列化され、パス中の削除は安全なアダプタ スナップショットを通じてワークスペース変更ステータスを返し、破棄は実行中の計算を待ち、失敗したノードは明示的な再試行のために dirty のまま残ります
  • CalculateAndVerify は保存された数式結果を非揮発性の新規計算と比較し、キャッシュを置き換えずにワークシート・セル・数式・期待値・実際の値の診断を報告します。RecalcAndVerifyEx はさらに深い監査として、隔離された依存関係グラフの結果オーバーレイ、上限付きコール スタック付きの型付き失敗カテゴリ、進行状況のキャンセル、再計算値のオプトイン原子的適用を追加します
  • ディープ監査の許容誤差は、新しい中間結果を抑制することなくミスマッチ報告をフィルタリングします。依存数式は監査済みの値を使用し、ミスマッチが報告されなくても明示的な適用によって変更済みキャッシュが更新されます。絶対許容誤差と相対許容誤差の両方が倍精度結果に適用されます
  • クラシック XLS のディープ数式監査は走査容量を事前に確保し、連続した plain-double のキャッシュ スナップショットを効率的にコピーします。他の Variant 型と隔離された評価オーバーレイはそのまま保持されます
  • クラシックの再計算は遅延構築の依存関係グラフを使い、dirty になった入力を推移的な依存先にだけ伝播し、揮発性数式は毎パス再計算し、非循環の数式を依存順に評価し、循環参照には強連結成分の反復を適用します。完全精度を無効にすると、依存先が消費する前に、数式と What-If データ テーブルのキャッシュが実効表示精度へ丸められます
  • オートフィルタ、リストの入力規則、ヘッダーなしレイアウトとテーブルごとのコメント、構造化参照の数式評価 (Table[Col]、列スパン、[#Data] / [#All] / [#Headers] / [#Totals]) を備えた Excel テーブル、負値の塗りと罫線色を持つデータバー、カラースケール、アイコンセットの条件付き書式拡張 (保存時にシート内で一意な優先度を付け、PivotTable スコープのルールは Excel 2010+ 拡張バケットへ振り分け)、そしてグラフ シート
  • テキスト ボックス、OfficeArt 描画、リレーションシップ駆動の型付きピボット インポート、フィルタおよびグループ化された複数値の実体化、計算フィールド、アイテムとメンバー、小計、総計、安定した並べ替え、クラシックと拡張の ShowDataAs 計算、さらにリッチテキスト コメント
  • トランザクション型ローカル ピボットキャッシュ更新は、現在のジオメトリで矩形、ワークシート スコープの定義名、テーブル ソースを解決し、物理的なテーブル合計を除外し、ワークシートの移動と名前変更を通じてソース識別を保持し、ソースの並べ替え、削除、再導入を通じて既存のフィールドとメンバー識別を維持し、共有ビューの選択を安定させ、型付きエラー値を処理し、キャッシュを変更する前に未サポートのスキーマや新しい未マッピングの離散グループ メンバーを拒否します
  • 安全なピボット ワークシート マテリアライゼーションは、隔離されたキャッシュを評価し、危険な重なりを拒否し、セル オブジェクトと書式を保持し、サイズ変更、移動、XLSX 再オープンを通じて所有する値を正確に追跡します
  • 型付き非 OLAP ピボット スライサー選択は、インポートされた共有メンバー選択を検査・変更し、接続されたビューのフィルターと交差させ、他のフィールドの独立した制限を保持し、変更の前にあいまいまたは未サポートのバインディングを拒否します
  • Excelで作成されたレコード、正確なRGBおよびテーマカラー、カスタムビュー、共有/リビジョンメタデータを保持する高忠実度のBIFF8ラウンドトリップ
  • BIFF8 RC4 暗号化によるパスワード保護ワークブックに加え、暗号化パッケージ上で検証済みのデータ整合性 HMAC を付けて Agile 暗号化の XLSX 保存と読み込みが可能です。クラシックの書き込み予約 (SetModifyPassword) は、読み取り専用推奨フラグ、パスワード ハッシュ、予約したユーザー名を運びます
  • 結合セルの AutoFit オーバーロードでは、必要な行や列の伸長を先頭メンバーまたは末尾メンバーに割り当てるか、結合スパン全体に均等に配分できます。非表示状態は保持され、メンバーごとの上限も尊重されます
  • セル値、数式(移動先のシート名に対して再コンパイル)、正確なRGB/テーマカラーの書式設定、結合セル、コメント、ハイパーリンク、行と列のレイアウト、ウィンドウ枠の固定、保護、ページ設定、タブの色、条件付き書式、データ検証、オートフィルタ基準、テーブル、埋め込み画像、リッチテキストラン(フォントは値で移行)、およびグラフシート(シリーズ参照は移動先に対して再コンパイル)を別のワークブックに複製するクロスワークブックワークシートコピー(TXLSWorksheets.AddCopy)。移動先にシートが存在しない数式は、ファイル識別子がある場合にソースワークブックを外部リンクとして再指定します
  • 共有キャッシュのピボットビュー、ローカル ピボット スライサーの作成と選択を認識する明示的な削除、修正済みグループ化キャッシュの更新、ネイティブ コンパクト レイアウト メタデータのプレビュー
  • トランザクション型ネイティブ ピボット ワークシート出力はグループ化レイアウトとカスタム行小計をサポートします。ローカル SUM 計算フィールドとキャッシュ所有のアイテムはコンテキスト合計、解決順序、サポートされる表示計算、フィルタリングを保持し、未サポートの状態は変更前に拒否されます
  • ピボット タイムラインとスライサー データ状態は、保護付きローカル日付フィルタリング、共有ビューのライフサイクル、明示的なネイティブ no-data アイテム更新を提供します
  • 自動クエリ プロバイダーは、サポートされるテキスト、ADO、ODBC、Web クエリを有界な結果と登録済みカスタム プロバイダーで明示的に更新します
  • クラシック グラフ検査は、サポートされるネイティブ OfficeArt 塗りつぶしテーブルをデコードし、マーカー直径をポイント単位で公開し、型付き状態を適用する前に保存されたテキストと注釈の寸法を検証します。生のグラフ ストレージは保持され、ポータブルなクラシック グラフ外観は個別に検証されます
  • ポータブル ヘッドレス出力は、サポートされるクラシック XLS または XLSX の矩形を不変スナップショットとしてキャプチャし、Linux と macOS 上で明示的なフォント ジオメトリ、リッチテキスト、モデル化された描画オブジェクト、セル内画像、ブール チェックボックス、サポートされるキャッシュ済み XLSX グラフ、呼び出し側が宣言するレイアウトと実効凡例サイズを持つ有界なコア BIFF8 キャッシュ グラフを使って PDF、SVG、PNG をレンダリングします
  • テキストと統計の計算済み配列引数は、関数固有の型強制とエラーを保持し、元の位置で共分散をペアリングし、計算予算に従います
  • 集計計算における定義名は、スカラー、配列、参照の型強制、型付きエラー、依存関係、リソース上限を保持します

モダン XLSX ファサード

Excel 2007+ (.xlsx) ワークブック用に TXLSXWorkbook を中心に構築された専用の OOXML エンジン

  • 共有文字列、スタイル、描画、シート機能、ZIP/XML パッケージング、ラウンドトリップ メタデータ。フィールドを意識した SpreadsheetML Xstring 処理により、制御文字やリテラルの _xHHHH_ トークンを、数式構文を書き換えずに保持します
  • ワークシートのページ設定は、pageSetup リレーションシップとシートごとの printerSettingsN.bin パーツを通じて、バイト一致のバイナリ プリンター設定を保持します。非標準のソース パーツ位置も受け入れ、決定論的な正規のターゲットを書き出し、同じワークブック内およびワークブック間のワークシート コピーでペイロードをディープ コピーし、欠落・型不一致・ぶら下がりのプリンター リレーションシップを、無関係なバイナリ パーツをバインドせずに報告します
  • 型付きの数値・文字列・Variant の行/列ライターは、繰り返されるバッチ間でセル容量を幾何的に拡張し、前方の行バッチを事前に確保されたスパース行ベクターへ直接追記し、ワークシート上限で安全にクリップし、重なり時も安定したハンドルを保持し、コールバック ディスパッチを回避します
  • OpenDocument (.ods)の読み取りと書き込み:Open/OpenODSを使用して既存のスプレッドシートをインポートし、SaveAsODSまたはSaveAs(xlsxOpenDocumentSpreadsheet)を使用してエクスポートし、TODSExportOptionsで出力を調整し、スタイル、リッチテキスト、画像、グラフ、検証、条件付き書式、ページ設定、印刷範囲、アウトライングループ、シート構造、およびワークブックメタデータをラウンドトリップします。エクスポート オプションは、通常どおりの再計算、進行状況のキャンセル、診断、書き込み保護をそのまま保ち、ファイル出力はシリアライズの失敗時やキャンセル時に既存の宛先を維持します
  • ODS のセル比較ルールと式ルールは、コンパクトな繰り返し空白キャリアを使って、行全体・列全体・広いターゲットの完全な範囲にわたり、差分のフォント スタイル、ソリッドまたは透過の背景、サポートされる表示形式を保持します。明示的にクリアされた属性は生き残り、無関係な基本書式は各セルに残り、テーマ カラーやインデックス カラーは解決済みの色としてエクスポートされます
  • マルチフォーマットインポート:セパレータ検出、BOM検出、オプションの値型推論を備えたOpenDocument (.ods)およびCSV/TSV
  • コンテンツ署名検出:DetectExcelContentFormatはファイルまたはストリームの先頭バイトを検査し、ファイル拡張子に関係なくBIFF複合ファイル、OOXMLパッケージ、OpenDocumentパッケージ、およびプレーン区切りテキストを区別します。また、両方のワークブックエンジンは不一致のコンテナを適切なローダーの名前とともに明確なメッセージで拒否します
  • フォーマットされた表示テキスト:読み取り専用のFormattedTextプロパティ(IXLSRangeおよびTXLSXCell)は、数値形式(区切り文字、パーセンテージ、日付/時刻マスク、マルチセクションマスク、ブール形式)を介してセルの値をレンダリングし、Excelがグリッドに表示するものと一致させます
  • ファイル変更監視:TXLSFileMonitor はディスク上のワークブックを監視し、別のプロセスが上書き保存すると OnFileChanged を発火します。ポーリング間隔は設定でき、イベントはメインスレッドと監視スレッドのどちらでも配信できます。ハンドラの中でモニターを停止・破棄したり、監視対象のファイルを切り替えたりすることもできます
  • パスワード確認:クラシック XLS エンジンの OnPassword イベントは、Open がパスワード未設定または誤りの暗号化ワークブックに出会うとアプリケーションにパスワードを求め、オープンを再試行します
  • 書式ブラシ:TXLSXCellFormat はフォント、塗り、罫線、配置、表示形式、保護を一度記述するだけで、セル、範囲、行、列、シート全体に適用できます。触った要素だけが適用され、プール インデックスは適用ごとに 1 回解決されるため、一括書式設定が高速です
  • 統合ストリーミング行:TXLSRowCursor は .xls、.xlsx、.xlsm、.ods、CSV、TSV の各ソースを行ごとに (FindFirst / FindNext) 走査し、メモリに置くのは現在の射影行または ODS 繰り返しテンプレートだけです。値の確保の前に行範囲と列選択をプッシュし、キャッシュされた数式結果と保存済みの書式付き空白を保持し、数式の存在と数式テキストの利用可能性を区別し、必要に応じて数式テキストを抑制し、ODF の covered セルをスキップし、繰り返し ODS スパン内の選択列間を直接ジャンプし、UTF-8 / UTF-16 の BOM と複数行の引用符付きテキスト レコードをデコードし、カンマ・セミコロン・タブ・パイプの区切り文字を推定し、定数時間の ValueByCol ルックアップを提供します。明示的なライフサイクル状態、冪等なキャンセル、借用または譲渡されるストリーム所有権、世代チェック付きのゼロコピー行ビュー、PeakRowBufferedBytes、SheetPassesStarted により、長時間の走査も観測可能で安全です。TXLSForwardReader は同じバックエンドを、スキップしたワークシート パーツを開かずに 1 始まりのシート/セル コールバックへ適合させます
  • 進行状況と診断:クラシック XLS と XLSX のワークブックは作業コールバックに加え、キャンセル可能な begin/work/end コールバックを提供し、IXLSWorkbookProgress と TXLSXWorkbook.Diagnostics が安定したコード、重大度、操作、シートまたはパッケージのコンテキスト、ネイティブの戻り値、例外の詳細を公開します
  • フェイルセーフな保存:クラシックのワークシート、グラフ、スタイル拡張、VBA、制御ストリーム、ストレージ、出力コミットの各失敗は呼び出し側へ伝播し、XLS・XLSX・ODS のディスク出力は、移動先が原子的に置き換えられる前にステージングされます
  • Windows の出力先置き換えは、POSIX rename をサポートするファイルシステム上で、削除を許可するメタデータ ハンドルやリーダー ハンドルを許容し、既存のリーダーは元のバイト列を見続けます。削除アクセス、非削除共有ロック、読み取り専用保護は 1 回のコミットの前にチェックされ、保存の再試行は行われず、古いまたは未サポートのファイルシステムはレガシーのコミット パスを保持します
  • 対処可能なファイル保存診断:TXLSXWorkbook.SaveAs(FileName) とその明示形式オーバーロードは、移動先の置き換えに失敗した際にネイティブな Windows エラーを保持し、診断コード 1005 を報告します。元の移動先はそのまま維持されます
  • コンパクトなセル/スタイル ストレージ:XLSX のセルは 256 行ブロックに置かれ、安定した公開ハンドルと行優先のキャッシュ フレンドリーなシリアライゼーションを持ちます。行エントリに冗長なペイロード タグはなく、値・数式・リッチテキストの変更でインデックス再分類を避けます。インポートされたセル スタイルは 1 つのイミュータブルな直接インデックス cellXf 配列で解決され、自動スタイル プール圧縮が、参照されないフォント・塗り・罫線・表示形式・配置・保護を各保存の前に落とします
  • 区間スタイル オーバーレイ:行・列・矩形の書式設定は、空のセル オブジェクトを実体化せずコンパクトなまま保たれ、セル アクセス時に遅延解決され、構造編集を生き残り、コンパクトな列・行・スタイルのみのセル エントリとしてラウンドトリップします
  • 行ストリーミングの通常保存:StreamingWrite (既定) は各ワークシート行をパッケージの deflate ストリームへ直接書き込むため、ピーク メモリは最大の 1 行に追従します。共有文字列と補助 XML パーツは、1 つの再利用可能な UTF-8 シリアライザで 1 エントリずつストリーミングされます
  • メタデータのみのオープン:TXLSXWorkbook.MetadataOnly は、ワークブック プロパティ、定義名、シート名と表示状態、スタイル、テーマ、接続、外部リンクをパースしますが、ワークシートのセル XML に加えて共有文字列、コメント/作成者データ、ワークシート リレーションシップ、描画、グラフ、テーブル、クエリ テーブル、ピボット、ワークシートから到達できる不透明ペイロードをスキップします。大きなワークブックからプロパティと名前を低メモリで素早く発見できます
  • XLSX の外部ワークブック スロットは workbook.xml の宣言順に従い、壊れたリレーションシップには空のプレースホルダを保持するため、後続の [N] 数式参照がロードと保存を通じて安定します
  • 選択ワークシート ローディング:TXLSXWorkbook.SelectedSheets を使うと、Open は指定シートのセル XML だけをパースし、他のシートは名前と表示状態だけを保ちセルを持ちません。スキップしたシートは LoadSheet(Index) で元のアーカイブからオンデマンドに実体化できます
  • 増分圧縮パーツ コピー:TXLSXWorkbook.PreserveRawParts は SaveAs 操作ごとに検証済みのプライベート ソース アーカイブを 1 つ開き、未変更のテーマ、VBA プロジェクト、接続、外部リンク、画像、グラフ、ピボットテーブル、ピボット キャッシュ、リレーションシップから到達できる不透明エントリを、元の圧縮ペイロードのままコピーします。成功したファイル保存が次のクリーン ベースラインになり、ストリーム バックエンドのワークブック、変更されたソース ファイル、改変されたペイロード、未対応の圧縮メソッド、圧縮サイズ不一致は、トランザクション型のシリアライズ フォールバックか拒否パスを使います
  • ワークブック拡張の保存:XLSX のオープンと保存は、外部のワークブック ルート名前空間宣言、マークアップ互換性属性、完全なワークブック レベルの <extLst> ペイロード、そしてそれらの未知のリレーションシップを保持します。型付きのシート、名前、ビュー、計算プロパティ、ピボット キャッシュは編集可能なままです。生成 ID が衝突したときはリレーションシップ参照が再マップされます
  • スライサー:Worksheet.Slicers.Add(Table, ColumnName) でテーブル スライサー (Excel 2013+) をエンド ツー エンドで作成できます。スライサー キャッシュ、予約済み定義名、ワークシート拡張、描画アンカーまでまとめて出力され、配置、キャプション、列数、スタイル、行の高さを制御できます。Excel が作成したスライサー (テーブル用・ピボットテーブル用のどちらも) を含むワークブックは、オープンと保存を通じてそのままの状態でラウンドトリップし、未変更のパーツとアンカーはバイト単位でそのまま再生されます。周囲のワークブックは完全に編集可能なままです
  • 複数ワークブック ウィンドウ:TXLSXWorkbook.WorkbookViews は、追加・挿入・削除・移動・クリア操作、型付きの表示状態とジオメトリ、編集可能な未知の属性と拡張、ワークシートの workbookViewId 再マップを備えた順序付きコレクションを公開します。既存の単一ウィンドウ プロパティは、最初のビューの互換プロジェクションのままです
  • 外部定義名と更新失敗:TXLSXExternalLink はリンク先ワークブックの <definedNames> エントリをパース・保存・ラウンドトリップし、各 TXLSXExternalSheetData は生きたデータ ソースを要求せずに RefreshError フラグで更新失敗状態を追跡します
  • マルチフォーマット クリップボード インポート:XLSPasteFromClipboardRich はプレーンな Unicode テキストより XML Spreadsheet クリップボード形式 (数式、スタイル、結合) を優先し、専用の形式検出、抽出、SpreadsheetML 2003 パース関数を備えます
  • ネイティブ Biff8 クリップボード交換:両エンジンの CopyToClipboard は、テキストや HTML と並んで Excel 本来の「Biff8」複合ドキュメント ペイロードを公開し、PasteFromClipboard はそれを最初に消費します。値はロケール依存の再パースなしで届き、相対数式参照は貼り付けターゲットに再アンカーし、表示形式、フォント、塗り、罫線、配置、結合セルは、HotXLS ワークブック間でも Excel コピーからでもラウンドトリップします
  • XLS と XLSX の PasteFromClipboard は、BIFF8 とフォールバック テキストを 1 回のクリップボード ロックで一緒に取り込みます。既存のリトライ ポリシーを維持しつつ、BIFF8 が利用できない、またはパースできない場合でもクリップボードを開き直さずに、読み取り可能な取り込み済みテキストを使います。テキストの取得に失敗しても読み取り可能な BIFF8 はそのまま使え、テキストだけが利用できない場合はセルを一切挿入しません
  • 必須のテキストおよび BIFF8 クリップボード公開に失敗しても、元の Win32 GetLastError 診断が後始末を通じて保持されるため、呼び出し側はすぐに確認できます
  • リッチテキスト マークアップ:TaggedText セル プロパティは、リッチテキスト ランと軽量タグ (<b>、<i>、<u>、<s>、<sub>、<sup>、<color=#RRGGBB>、<font=Name>、<size=N>) を双方向に変換します
  • 64 ビット安全なクリップボード リーダー (競合リトライ付き)、絶対参照・逆順・行全体・列全体・空白区切り領域を対象にした、キャッシュされた条件付き書式とデータ検証のターゲット マッチングと一貫したルール検索・削除・条件付き評価・検証チェック、そして二分探索の PDF ハイパーリンク インデックス
  • 計算の拡張性:名前によるユーザー関数登録、未知関数の監査 API、壊れたパーツをスキップするリカバリ モードのオープン、ネイティブ Biff8 クリップボード交換、キャッシュされた入力規則の範囲マッチング
  • PDF 画像:ワークシートの画像は JPEG パススルーと PNG ストリーム再利用付きの Flate RGB XObject として埋め込まれます (再エンコードなし、ソフト マスク経由でアルファ チャンネルを保持)。バイト一致する画像は 1 回だけ埋め込まれ、keep-together ブロックと XlsxAutoPageBreaks がページネーションを揃え、ZipCompressionLevel と DeterministicOutput が保存出力を制御します
  • PDF 出力パイプライン:ページ コンテンツ ストリームは Flate 圧縮され、連続するテキスト操作は重複を除いたフォント/色選択付きのバッチ化テキスト ブロックを共有し、等しい隣接塗りは 1 つの矩形へマージされ、同一線上の罫線セグメントはマージされたランとしてストロークされます。ファイルは小さく、生成は速くなります。OnProgress と中断可能な OnProgressEx が begin・ページ・end の各状態を報告し、Cancel は部分的な PDF を出力先ストリームへコミットせずに長時間のエクスポートを停止します
  • PDF セル テキストの忠実度:垂直ブロック配置と均等割り/分散行を備えた実際のワード ラップ、回転テキストと縦書き積み上げテキスト、縮小して全体を表示、クリップ付きで空の隣接セルへあふれる Excel 風表示、標準配置での数値右寄せ、インデント、ランごとのスタイル・サイズ・色・下線・取り消し線・上付き/下付きを持つリッチテキスト ラン、斜め罫線と二重罫線、結合セルにまたがるテキスト。すべて GDI 校正済みの Helvetica アドバンス幅で配置されます
  • PDF 印刷忠実度:Excel のフォント サイズ、色、太字/斜体/下線/取り消し線、上付き/下付きコードを備えたスタイル付きヘッダー/フッター、白黒印刷モード、行と列の見出し印刷、水平/垂直の印刷中央寄せ、コメント インジケーターと PrintCommentsAtEnd による末尾コメント一覧ページ、内部ハイパーリンクのドキュメント内 GoTo リンク、XMP メタデータ付きのビューア PageLayout 設定、Excel 正確な MDW 列幅、Unicode フェイスの合成太字/斜体カットを備えた TrueType コレクション埋め込み
  • PDF グラフ:ワークシートのグラフはネイティブ ベクターで描かれます。集合・積み上げ・100% 積み上げの縦棒/横棒、マーカー付き折れ線、面、割合ラベル付きの円とドーナツ、散布図、レーダーに対応し、タイトル付きフレーム、自動スケールの軸と目盛ラベル、罫線、凡例、データ ラベル、系列ごとの塗り、Excel の既定アクセント パレットを備えます。最後のデータ セルより先にアンカーされたグラフは印刷面を拡張します
  • インタラクティブ PDF:ワークシートのハイパーリンクがクリック可能なリンク注釈になり、エクスポートされた全シートにドキュメント アウトラインのブックマークが付きます
  • パッケージ レベルの拡張性:型付きカスタム ドキュメント プロパティ、カスタム XML データ パーツ、SVG 画像コンパニオン、インデックス化キャッシュとポイント表示上書き付きのセル由来グラフ データ ラベル、セクションごとの色を持つユーザー定義テーブル スタイル、違反セルをすべて列挙する入力規則監査 API
  • 書式忠実度の強化:経過時間の [h]:mm:ss と分数の # ??/?? 表示形式がどこでも描画され、[Red] ブラケットが PDF テキストを再着色し、セルのグラデーション塗りがラウンドトリップして HTML/PDF/ビューアで描画され、ウィンドウ枠の固定とペイン スクロールが読み戻され、DispBlanksAs/PlotVisibleOnly がグラフ プロパティになり、コメント ボックスは WidthPt/HeightPt/AutoSizeFromText でサイズ設定され、ValidateNumberFormat がカスタム書式文字列を検証します
  • Excel セマンティクスの検索:FindText / ReplaceText はワイルドカード (*、?、~ エスケープ)、セル全体一致、大文字小文字の区別、数式テキスト検索、後方走査、列優先の走査順、検索を矩形範囲に限定するウィンドウ化 FindTextIn / ReplaceTextIn、一致ごとの置換コールバックに対応します。AddSubtotals による Excel セマンティクスのグループ化 (SUBTOTAL ラベル行、総計、アウトライン レベル、改ページ、置換モード)、A1 と R1C1 参照形式を双方向に変換する A1ToR1C1 / R1C1ToA1、Excel 風テキスト型推定の WriteAutoValue (ISO、米国 m/d/yyyy、AM/PM 任意の時刻付き欧州 d.m.yyyy の日付)、GetRangeStatistics の範囲集計、Excel 参照セマンティクス ($ 部分は維持、相対参照は再アンカー) で数式を保持する大文字小文字を区別しない SortRange、GetHtmlFromCell の単一セル HTML フラグメント、リッチ ランとしての SetCellFromHtml HTML フラグメントも備えます
  • シート背景:SetBackgroundImage は両ワークブック エンジンでタイリング画像を書き込みます。XLSX はワークシート コピー間でパッケージ メディアの所有権を保持し、クラシックは型付き BIFF8 背景レコードを、連続ペイロード分割、未知形式の正確な保持、コピー分離、エンジン間の既知形式変換付きで読み書きします。ワークブック ビューアは未塗りセルの背後に有効な背景を表示し、印刷、PDF、SVG、ビットマップ、メタファイル、両 HTML エクスポーターは背景を既定で無効に保ち、ページ間フェーズ連続性とセッションごとのリソース再利用付きで明示出力する ExportSheetBackgroundImages を公開します
  • 書式エンジンの深さ:条件付き表示形式セクション ([>=100]) は値で選択し、テキスト セクション (@) は文字列をテンプレート化し、TaggedText は <br>、<strong>/<em>、<font color=...> 属性形式を受け入れ、ConvertFormulasToValues は両ファサードで外部のみモードを提供し、列の keep-together ブロックが行ブロックを補完し、クラシックの Spinner/ScrollBar フォーム コントロールを XLS に書き込め、行 AutoFit は結合セルも処理します
  • クリップボード交換:PasteFromClipboard はタブ区切りテキストを、数値/日付/ブールの型昇格と数式認識付きでセルへ読み込み、範囲レベルの CopyToClipboard は、数式、結合セル、リンク、表示書式、埋め込み区切り文字の保持付きで、Unicode 表形式テキストとスタイル付き HTML の両方を公開します
  • 編集可能なワークブック ビューア:TXLSWorkbookViewer はどちらのワークブック エンジンにも直接バインドし、XLS、XLSX、XLSM、XLTX、XLTM、ODS ファイルを読み込み、スパースな XLSX セルを実体化せずにスタイルと条件付き書式を描画します。保護セルを考慮したインプレース編集、数式バー入力、自動再計算、矩形選択、数式参照イベント、O(1) の上限付き undo/redo を備えます
  • クラシック XLS のピボットテーブル キャッシュは、一意の識別子、ワークシートまたは名前付きソース参照、Unicode シート名、暗号化キャッシュの読み書きを備えた独立したストレージ ストリームを使います。既存のキャッシュ拡張は保存時に元のバイト列を保持します
  • 再利用可能なピボット レイアウト デザイナー:TXLSPivotDesigner は利用可能・行・列・フィルタ・値の各ゾーン、決定論的なフィールド並べ替え、型を認識する既定集計、明示的な集計変更、レイアウト検証、XLS/XLSX どちらのピボット モデルへの結果適用も公開します
  • クラシック フォーム コントロール:ワークシートと図形コレクションで、ボタン、ラジオ ボタン、チェック ボックス、コンボ ボックス、リスト ボックスの各コントロールを作成・列挙・編集・削除・ラウンドトリップできます。型付きラベル、チェック状態、フラット/3D 描画、マクロ バインディング、リンク セル、ソース範囲、コントロール種別、セル アンカーを備えます
  • GetChartModel によるクラシック XLS グラフ検査は、グラフ ファミリ、3-D 状態、グラフと軸のタイトル、凡例、主/副軸グループ付きの軸、系列名、カテゴリ、値数式、区切り文字付きの系列データ ラベル表示フラグ、系列ごとの主/副グラフ グループ バインディング、名前付きまたは外部のカテゴリ/値参照、系列ごとの線・塗り・マーカー スタイル (テーマ色インデックス + tint を GelFrame OfficeArt テーマ カラー拡張が運ぶテーマ色塗り)、グラフ ストリームからの完全な 3-D シーン パラメータ、ピボットグラフ リンク (SXViewLink / PivotChartBits レコードによるソース PivotTable ビュー名と hide-field-captions フラグ) をデコードします。また AddChartObject による通常ワークシートへの埋め込みグラフ オブジェクトに加え、系列ごとの近似曲線 (回帰種別、次数または期間、自動/固定切片、数式と R-2 乗の表示、予測と後方予測、表示名) と誤差範囲 (方向の辺、値の種別、端キャップ、大きさ) も扱います
  • TXLSXWorksheet.HeaderFooterImages による型付き XLSX ヘッダー/フッター画像。奇数・偶数・先頭ページの左・中央・右すべてのスロットを、画像バイト、形式、タイトル、ポイント寸法、ポイント余白、自動画像フィールド コード、ワークシート コピー、コメントと共存するリレーションシップ安全なオープン/保存ラウンドトリップ付きでカバーします
  • TXLSXImage による編集可能な XLSX 画像効果。パーセントのトリミング辺、透明度、明るさ、コントラスト、伸縮またはタイル塗り、度単位の回転を含み、無関係なインポート済み DrawingML の構造を保持します
  • 高度な XLSX グラフ構築とラウンドトリップ。順序付きの縦棒・横棒・折れ線・円・面・散布図・バブル・レーダー・株価・サーフェス・3D プロット グループ、明示的なプロット グループ描画順を持つ真の複合グラフ、主軸/副軸ペア、型付き日付軸と系列軸、設定可能な 3D ビュー、Excel ギャラリー スタイル、タイトル・凡例・軸テキスト スタイル、手動のプロット/タイトル/凡例/軸タイトル レイアウト、スパースな文字列または数値系列キャッシュ、生きた 2 次元範囲解決付きのスパース多レベル カテゴリ キャッシュ、未知の ChartML 拡張と書式の編集可能な保持を備えます
  • 選択的書式パッチ:TXLSXRange.ApplyFormatPatch は要求されたフォント、塗り、罫線、表示形式、配置、保護のコンポーネントだけをコピーし、小さいソース パターンを大きい移動先にタイル状に敷き詰め、セル値には触れません
  • マスター・詳細データ エクスポート:TDataToXLS.ReadDetailTables は各マスター レコードの下にリンクされたアクティブな詳細データセットを再帰的にエクスポートし、IndentDetailTables はリレーションシップ レベルごとに 1 列のインデントを追加します。継承されたエクスポート設定により階層は視覚的に一貫します。先行書き込みのレコード/値イベントで、データセット カーソルを乱さずにレコードのフィルタやフィールド値の変換ができます
  • WordArt 作成:TXLSXWorksheet.AddWordArt は、設定可能なプリセット ワープ、テキスト塗り色、輪郭色を持つセル アンカーの DrawingML テキストを作成します。以降のオープン/保存サイクルでも完全な図形アンカーが保持されます
  • 未対応 OOXML パッケージの保存:未知のパッケージ ルート、ワークブック、ワークシート、描画リレーションシップから到達できるカスタム パーツは、衝突安全なリレーションシップ ID、コンテンツ タイプ、子リレーションシップ、圧縮方法の選択、正確なペイロード バイト列をオープン/保存ラウンドトリップで保持します。オプトアウトと保持パーツ診断を TXLSXWorkbook に備えます
  • Excel スタイルのテーブル:スタイル、フィルタ範囲と抽出条件、並べ替え状態、安定した列識別子、集計行のラベルと関数、集計列の数式、集計行の数式、構造を認識する行/列編集、ラウンドトリップ コレクション ヘルパーを備えます
  • TXLSXWorksheet.IgnoredErrors による型付きワークシート無視エラー ルール。すべての標準エラー カテゴリ、複数領域のセル参照、ワークシート コピー、行/列編集、オープン/保存ラウンドトリップをカバーします
  • TXLSXWorksheet.Scenarios による型付き What-If シナリオ マネージャーの作成。アクティブ/表示のシナリオ、変化セルの範囲、ロック/非表示状態、ユーザー コメント、入力値と表示形式、ワークシート コピー、構造編集、修復不要のオープン/保存ラウンドトリップを含みます
  • TXLSXWorksheet.AddDataTable と DataTables による型付き What-If データ テーブル。行入力、列入力、2 変数、削除入力、計算順序、ワークシート コピー、構造編集、SpreadsheetML ラウンドトリップの各セマンティクスをカバーします
  • TXLSXWorkbook.Connections による型付き外部データ接続と、TXLSXWorksheet.QueryTables によるワークシート クエリ結果。更新ポリシー、資格情報、データベース/Web/テキスト設定、正確な型付きパラメータ値、テーブル/フィールド バインディング、構造編集、ワークシート コピー、拡張セーフな OOXML ラウンドトリップを含みます
  • CalcMode、RefMode、反復計算設定、再計算フラグ、完全精度制御、並列計算設定による完全なワークブック計算ポリシー。スキーマ既定と、非既定値の独立した永続化を備えます。さらにオプトインの RecalcLookupCache / RecalcAggregateCache メモにより、単一の平範囲への繰り返し XLOOKUP/XMATCH、VLOOKUP/HLOOKUP/MATCH、SUMIF/COUNTIF/AVERAGEIF スキャンと無条件の SUM/AVERAGE/MIN/MAX/COUNT が、再計算パス中は最初の結果を再利用します。依存関係グラフが参照安定と証明できる場合だけ有効化されるため、結果が変わることはありません
  • RecalcBeforeSave (手動 / dirty 時 / 常時) による保存時再計算ポリシーに加え、RecalcNeeded の dirty 状態検査、全体再計算後の単一セル RecalcCell 値取得を備えます
  • レポート値プレースホルダ:{{name;default}} フォールバック、登録済み DataContext と実行ごとに隔離されたデータ セッションの上で動く dbvalue/dbcount/tonumber/ref 式、ライブ数式として書き込まれる素の {{=formula(...)}} セル、そして {{#imgsize}}、{{#comment}}、{{#html}}、{{#sheetvisible}}、{{#deletesheet}} の構造ディレクティブ
  • 正確な {{#usertable(alias, logicalName, providerKey, name=expression)}} セルによる型付き遅延ユーザー テーブル。コンパイル時の構文チェック、リゾルバ不要の静的プリフライト、動的な型付きパラメータ、登録プロバイダの強制、大文字小文字を区別しない競合診断、宣言数の上限、dbvalue / dbcount による初回使用時ロードを備えます。TXLSReportGenerator.DataContext と TXLSReportTemplateChecker.DataContext が同じレジストリを生成と検証へ運びます
  • 遅延 Filter、安定した複数キー Sort、Distinct コンビネータによるレポート データ シェーピング。FromDataSet / FromObjects アダプタは、開かれたデータセットとパブリッシュ済みプロパティのオブジェクト リストをレポート テーブルとしてバインドします。RunBidirectional バンドは各マスター行に子駆動の列を与え、PreprocessAndRun は最終充填の前にテンプレートをデータに対して自己変更させます
  • 両ワークブック エンジンのクリップボード貼り付けオプション (値のみ、行/列の挿入) に加え、ダイレクト リーダー、行カーソル、前方リーダーの OnSkippedRecord 診断が、スキップされた不正セル参照と中断された BIFF シート走査を公開します
  • SharedRevisionProtected と SharedRevisionPasswordHash によるクラシック XLS 共有リビジョン保護のラウンドトリップ。レポートも暗号化をエンド ツー エンドで扱い、暗号化テンプレートはパスワードでオープンでき、RunToEncryptedFile は暗号化された結果を 1 ステップで出力します
  • ワークブック間の CopyRangeTo/CloneRangeTo はプール間でセル スタイルを値で再マップし、クラシック XLS の CreatedDate、LastSavedDate、RevisionNumber、EditTimeMinutes は OLE サマリ ストリームを通じてラウンドトリップします
  • グラフ描画は横棒プロット グループの GapWidth、Overlap、積み上げ/100% 積み上げグループ化を消費するため、描画された横棒/縦棒グラフはモデルのレイアウト セマンティクスと一致します
  • グラフはグラフ空間の書式 (角丸、背景/罫線/プロット領域の色) と 5 つのグラフ保護スイッチをラウンドトリップし、レンダラがその色を消費します。系列レベルの Smooth とマーカー塗り/罫線色はラウンドトリップして曲線セグメントとして描画されます。軸は交差モードと目盛スタイルを運び、AutoTitleDeleted は派生タイトルを抑制します
  • TXLSPDFWriter はスプレッドシートなしで PDF を構築します。明示的なページ サイズ、複数ページ フロー、矩形/線/楕円、計測テキスト、変換、クリッピング、グラフィックス状態の制御を備えます
  • AutoFit は 2 フェーズの MarkSheet/ApplyMarked フローを提供します。検査可能な保留中の計測、フィット領域の境界、IgnoreStrings、KeepHeightAutomatic、DefaultRowHeightVisual の下限、1 回呼び出しの FitWorkbook を備えます
  • PDF Unicode フォントは、自動・必須サブセット・完全プログラム・マップのみの各埋め込みポリシー、スタンドアロンの OpenType CFF プログラム、計測と描画で共有する GPOS/kern ポジショニング、解決前の OnFontEmbed コールバック、再帰的にキャッシュされる OnGetFontDirectories ファミリ/スタイル リゾルバに対応します。PDF/A 出力では引き続きフォント プログラムの埋め込みが必要です
  • シート、テーブル、グラフ、画像、結合範囲、外部リンクを名前または位置で検索・削除・並べ替えるコレクション ヘルパー
  • データ範囲からの 1 回呼び出しグラフ作成:AddChartFromRange と AddColumnChart / AddBarChart / AddLineChart / AddPieChart / AddAreaChart ショートカットは、Excel の選択範囲からのグラフ挿入のように、データ ブロックから系列とカテゴリを自動的に導出します
  • 行と列の挿入/削除は、数式、テーブル列とそのフィルタ/並べ替えメタデータを調整し、削除されたテーブル列の構造化参照を数式利用者全体で無効化し、編集領域が異なる数式アンカーを要求するときはセル値/式の条件付き書式と入力規則を分割し、集計条件付き書式のドメインはそのまま保ち、定義名、ハイパーリンク、バブル サイズを含むグラフ系列、画像/グラフ/テキスト ボックス/WordArt のアンカーを自動的に移動します
  • 数式計算はクラシック XLS 評価器を共有し、プロセス全体およびワークブック ローカルのユーザー関数レジストリ、ワークブック ローカルの上書きセマンティクス、並列安全なロックフリー ハンドラ呼び出し、ブロードキャスト配列演算子とセルごとのエラー、多変数の完全な LINEST / LOGEST 行列、整形された TREND / GROWTH 予測、テキスト・日付・稼働日・エンジニアリング/基数変換・ビット演算・統計・集計・数学関数のカバレッジ、対象再計算なしで参照を保持する ISFORMULA 検査、対数二分探索の XMATCH / XLOOKUP、ISOMITTED による省略可能引数の検出、ARRAYTOTEXT / VALUETOTEXT の配列変換、検証済みの XIRR / XNPV 計算、PDURATION / RRI の投資期間と成長率、期間が端数の VDB 減価償却、OnUserFunction カスタム関数コールバックを備えます。AnalyzeFormulaIssues は、存在しない関数、外部参照、循環依存の正確な構成要素について構造化されたプリフライトを提供します
  • 現在行形式 (Table[@Col]) の構造化参照は、直列・並列の再計算のどちらでも、数式セル自身の行に対して評価されます
  • 依存関係分析は、複数領域参照を含むスコープ付きおよび入れ子の数式定義名を展開し、静的な依存解決が不可能な場合にだけ循環ガードを使います
  • Excel が作成した共有数式は、ワークブック全体、ストリーミング ダイレクト リーダー、行カーソルの各パスで、すべてのフォロワーが正しいセル相対式に展開された状態でオープンされます。CSE 配列アンカーとフォロワーは、安全な配列全体の構造編集、完全範囲コピー、ワークシート複製、ワークブック間シート コピーを生き残ります
  • 動的配列は TXLSXRange.SetDynamicArrayFormula で作成でき、数式範囲と XLDAPR メタデータをオープン/保存サイクルを通じて保持し、重複を排除した 1 つのメタデータ レコードをルート間で共有し、ワークブック間コピーでそのレコードを再マップし、最後のルートがクリアされると削除します
  • 計算済み配列の合成は、型付きの TRANSPOSE、計算済みの行列乗算、行列式と逆行列、CHOOSECOLS / CHOOSEROWS の負のインデックスとベクトル セレクター、XLOOKUP / XMATCH / MATCH の計算済みルックアップ ベクトルと配列要求、そして評価ステップと配列メモリ上限付きのスタックおよび再整形操作を含みます
  • XLSX ワークシート上のフォーム コントロール作成 (AddFormButton / AddFormCheckBox / AddFormRadioButton / AddFormComboBox / AddFormListBox)。VML 図形、ctrlProps パーツを備え、コントロールを含むファイルをそのままラウンドトリップします
  • パスを保持する ExternalWorkspace と互換の RegisterExternalWorkbook ファサードによるライブな XLSX ワークブック間評価。完全なリレーションシップ ターゲットと拡張は区別され、曖昧なエイリアスは明示的に失敗し、ターゲットの破棄はライブ アダプタを安全に取り消し、ファイル ローカルの型付きキャッシュがフォールバックのまま残ります。ファイルやネットワークへの暗黙アクセスはありません
  • TXLSXWorkbookCompare によるワークブック比較。シート、セル、数式、結合の差分を構造化リストまたは 1 差分 1 行のレポートで報告します
  • TXLSCodeGen (Delphi / C++Builder 言語方言) によるワークブックからコードの生成、および赤フォントとコメント注釈、違反のみ残す圧縮を備えた TXLSImportCheck による列ルール インポート検証
  • 認識できない XLS ワークシート レコードはそのままラウンドトリップします。ベンダー固有や新しい仕様のレコードを読み込み時に捕捉し、保存時に再生します
  • AddPresetShape によるプリセット ジオメトリ図形。任意の OOXML ST_ShapeType トークンが描画にそのまま乗り、ラウンドトリップします
  • テンプレート処理:ApplyTemplate は {{key}} プレースホルダをシート全体で置換し、FillTemplateBand はレコードごとにテンプレート ブロックを複製します。数式変換、依存する条件付き書式、入力規則、リンク、コメント、画像、グラフ、結合の複製、行レベルの #skip 条件付きを備えます。CloneRangeTo は選択可能なペイロードで同じ依存関係認識コピー パスを公開します。TXLSCompiledReportTemplate は、セル、リッチテキスト、コメント、ハイパーリンク、描画テキスト、ヘッダー/フッター、シート名、定義名、ドキュメント プロパティにわたる繰り返し実行のために、プレースホルダ位置とテキスト断片をワークブックを再走査せずに一度コンパイルし、アドレス付きプリフライト診断、変更前の厳格な検証、診断ワークシートをサポートします。TXLSCompiledReportRunner はターゲット レベルの進行状況、キャンセル、決定論的な適用件数、再利用可能な完了/失敗状態、ペアになったワークブック/ワークシート ライフサイクル イベント、回復可能な問題スナップショット、原子的なストリーム/ファイル/暗号化ファイル出力を追加します。TXLSReportGenerator はテンプレート読み取りイベントと、ワークブック/ファイル/ストリーム/暗号化ファイルのソース、インプレースまたは原子的クローンによる変更を追加します。IXLSReportTable、IXLSReportCursor、実行ごとの遅延プロバイダとリゾルバ、複合キー リレーション インデックスは、参照されないテーブルを強制ロードせずに再利用可能な仮想/メモリ内データ ソースを供給し、TXLSReportTableFactory は中間行ペイロード全体をコピーせずに top・射影・カウント・最小・集計・union・分割・ハッシュ結合のビューを合成します。実行可能な Delphi / C++Builder ギャラリーが、同じデータ コンテキスト、コンパイル済みランナー、診断ワークシート、LastResult、RunToFile パスを実演します
  • 名前付き構造レポート バンド:TXLSCompiledReportBand は、ワークブックまたはワークシート スコープの正確な矩形定義名を解決し、1 パスの上限付き行/列スナップショットから下方向・右方向・両軸に展開します。値の型、複合参照の数式、結合、ルール、入力規則、ハイパーリンク、コメント、描画、明示的な行/列レイアウト メタデータを保持し、未対応の部分的な構造は変更前に拒否します
  • 範囲とレポート バンドの繰り返しコピーでは、スコープ付き定義名のサフィックス検索を再利用します。削除・名前変更・スコープ変更の後も、最初に利用可能な名前付けが維持されます
  • TXLSCompiledTableReportBand による展開可能な Excel テーブル レポート バンドは、1 つの上限付きカーソル スナップショットで 1 行のデータ テンプレート行を展開しつつ、ヘッダー、合計、テーブルとオートフィルタの範囲、フィルタ/並べ替え状態、列メタデータ、集計列と集計行の数式、スタイル、構造化参照、依存ワークシート オブジェクトを保持します。表現可能な空結果はデータ テンプレート行を取り除き、クエリ バックエンドのテーブルや安全でないレイアウトは構造書き込みの前に拒否されます
  • 範囲および Excel テーブルのレポート バンドは、ErrorMode、StrictDataAccess、RuntimeLimits、イミュータブルな LastResult 診断を共有します。WriteAndContinue は明示的に回復可能な行失敗を、入力行と実際の出力アドレス付きのリテラル テキストとして保存し、残りのターゲットと行を継続します。致命的な構造/リソース失敗は展開をロールバックします
  • 生値または表示テキストのコールバックによるセル/行スキャン、テンプレートの検索と置換、一括書き込み
  • 一元化されたスクラッチ ファイル管理 (登録された一時ファイルはファイナライズ時に一掃)、オプトインの VerifyEncryptedSave 書き込み後復号チェック、データセット エクスポーターの OnExportLimit イベント付きのフォーマットごとグリッド上限定数
  • 入力規則ヘルパー:文字列配列からの 1 回呼び出しリスト ドロップダウン、クラシック XLS と XLSX で共有される型付き IME モード、独立した配列属性を保持するテーブル数式、条件付き書式拡張、一元化された CSS スタイル クラスを持つ設定可能な HTML エクスポート、そして AES 暗号化の保存と読み込み。AES-NI で高速化された ECMA-376 Standard Encryption (AES-128) に加え、Excel の既定である Agile Encryption (SHA-512 鍵導出、AES-128/192/256) の読み込みに対応します
  • クラシックおよび XLSX の HTML エクスポーターは、操作ごとに所有される xlsrgbHtml ジオメトリ スナップショットを使い、Normal フォントの最大桁幅メトリックを通じて文字幅を固定 CSS 長へ変換します。マルチシート操作ごとに 1 つの上限付きキャッシュを再利用し、診断のためにアクティブなスナップショットを公開し、保存されたワークシート寸法を保持します
  • 準備済みの XLSX 条件付き書式評価:優先度と StopIfTrue のレイヤー化、相対数式、共有マルチ領域統計、上位/下位と平均ルール、重複と一意の値、相対日付期間、テーマを認識する差分スタイル、カラースケール、方向付きデータバー、すべての組み込みアイコンセット ファミリに対応します
  • 寛容な XLSX オープン:パース中に名前空間プレフィックスが正規化されるため、非正規または ISO 29500 strict 名前空間に束縛されたワークシート、グラフ、描画、ドキュメント プロパティも普通のファイルのようにロードされ、行やセルが位置属性を省略するワークシートは、走査順で先行セルの後に各セルを推論します
  • StrictOOXML による厳密 Open XML 出力:XLSX パッケージ全体 (ワークシート、共有文字列、スタイル、テーマ、描画、グラフ、コメント、ドキュメント プロパティ、保存パーツ) が、purl.oclc.org ボキャブラリで ISO/IEC 29500 strict 適合として保存され、strict のリレーションシップ型はオープン時に transitional と同じように解決されます
  • ワークブック全体の XLSX オープンは、ワークシートの ZIP エントリをワーカー ローカルの inflater と XML リーダーへ直接ストリーミングし、展開済みワークシート XML のステージング コピーを保持せず、一時的なワークシート入力メモリをアクティブなパース ワーカーに限定します
  • ストリーミング ダイレクト リーダー (TXLSDirectReader) は .xlsx / .xlsm をセルごとに走査し、セルごと/シートごとのイベントと、超大規模ワークブック向けのほぼ一定のメモリ フットプリントを提供します。各セルの値、種別、数式テキスト、スタイル インデックスを、オプションの日付検出、ZIP 入力と展開に伝播する早期中断、行範囲プッシュダウン、値デコード前の定数時間列投影付きで報告します。オプトインのレイアウト イベントは、依存セルの前にワークシート寸法、既定サイズ、列スパン、行メタデータ、固定/分割ペイン、結合範囲を公開します。上限付き並列パースは、呼び出しスレッド上のコールバック順を保ちながら、ワーカー ローカルのワークシート inflater を独立した予算の producer-consumer キューへストリーミングし、リッチ文字列の保存は書式付きラン、フォネティック範囲、フォネティック プロパティを公開し、上限付き共有文字列ストアは小さなテーブルをメモリに置いたまま、大きなテーブルとリッチ ペイロードをインデックス付きクローズ時削除の一時ストレージへ移します
  • ストリーミング ダイレクト ライター (TXLSDirectWriter) は .xlsx ワークブックをセルごとに生成し、行が到着するたびに各ワークシートをパッケージへ直接出力するため、超大規模ファイルをほぼ一定のメモリ フットプリントで生成できます。インラインまたは重複排除の共有文字列、書式付き/フォネティック ランを持つリッチ文字列、数値、ブール、日付、数式、クローン ハンドル付きの再利用可能パッケージ レベル セル スタイル、重複排除されたフォント/塗り/罫線/表示形式、フォント強調、下線、アウトライン、影、19 種の塗りパターン、5 辺×14 種の罫線スタイル、水平/垂直配置、折り返し、縮小、インデント、回転、引用符プレフィックス、ロック/非表示保護、組み込みとカスタムの表示形式、列幅、行高、非表示行/列、結合範囲、値/空白/日付グループ/カスタム/動的/上位下位フィルタと並べ替え状態を持つワークシートおよびテーブルのオートフィルタ範囲、細粒度権限のワークシート保護、レガシー/モダンのパスワード メタデータと編集可能な保護範囲、ワークブック構造とウィンドウ保護、ウィンドウ枠の固定、シート タブ色、右から左のシート ビュー、シート ビュー表示トグル、ページ余白、ヘッダー/フッター テキスト、印刷オプション、ページ設定、ページに合わせる設定、手動改ページ、複数シートにわたるワークシート ハイパーリンク、ワークブック/シート ローカルの定義名、生成された定義範囲、印刷範囲、印刷タイトル行/列、入力プロンプトとエラー警告付きの入力規則、8 種のセル値演算子・式・テキスト一致・上位/下位ランク・平均・重複/一意・空白/エラー述語を持つ条件付き書式、データバー、2 色/3 色スケール、17 系統のアイコンセット、差分フォント/塗りスタイル、優先度と stop-if-true 制御、列名、ヘッダー/集計行フラグ、テーブル コメント、集計行の列ラベルと関数、集計列の数式、集計行の数式、テーブル スタイル表示オプションを持つ Excel テーブル パーツ、さらにクラシック コメント、ストリーミング画像ソース、アンカー付き DrawingML、数式を基盤とする型付きグラフ、呼び出し側提供 ChartML のための current-sheet サイド チャネルをカバーします
  • オプトインのあふれ継続 (AutoSplitRows) は、ワークシート上限を超える行が到着すると <name>_2 シートへエクスポートを分割し、FillTableCalculatedColumn は Excel の作成と同じように、テーブル列の数式をすべてのデータ行へ押し込みます
  • BeginPatch によるインプレース ワークシート パッチ:ストリーミング ライターは既存パッケージの 1 つのワークシートを書き直し、触れていないパーツはすべて圧縮バイトのままそのままコピーされます。テンプレートを再作成せずにデータ シートを置き換えたり新しいシートを追加したりできます。初期化や終了処理に失敗してもソース ハンドルは解放され、テンポラリ ソース登録の後始末は呼び出し側の責任のまま、初期化に失敗した後でもライターを再利用できます
  • AddCamera によるカメラ オブジェクト:セル範囲に束縛されたライブ スナップショット画像で、ドキュメント化されたカメラ ツール描画拡張に従います。この束縛は保存と再オープンを通じてラウンドトリップします
  • AddAttachment による PDF 添付:ファイルは名前ツリー付きの /EmbeddedFiles エントリとしてエクスポートに乗り、IXLSPDFAttachmentSource は上限付きスプールを通じて保存ごとに 1 回、各ペイロードを遅延提供できます。最終組立はオブジェクトを順次出力先へストリーミングするため、添付ペイロードは間接長オブジェクト付きの固定チャンクでコピーされ、ピーク メモリはフラットに保たれます
  • PDFAProfile による明示的な PDF/A-1a、1b、2a、2b、3a、3b 出力。プロファイル固有の識別、カラーマネジメント、タグ付け、添付、原子的な検証ルールを含みます。UsePDFA は PDF/A-2b 向けの互換スイッチとして残ります
  • PDF エクスポートは、クラシック レイアウトか、圧縮オブジェクト ストリームとバイナリ相互参照ストリーム (UseXRefStream) によるオプトインの PDF 1.5 レイアウトで動作し、ファイルを小さくできます
  • PDF エクスポートは、キャンセル可能で部分的なストリーム コミットを行わない、再利用可能な begin/ページ/end 進行状況コールバックに対応し、さらに末尾コメント一覧ページと共存できる、セル位置指定の Unicode コメント注釈もオプションで提供します
  • PDF のグラデーションと透明度は、ステッチされたマルチストップ関数、ストップごとのアルファ マスク、セル塗りパターン、画像の影、ページ レベルのクリッピング、ドキュメント レベルのリソース キャッシュを備えた、ネイティブな軸方向/放射方向シェーディングを使います。選択された PDF/A プロファイルは、出力コミット前にグラフィックス制限を適用します
  • SetFontFallbackChain、AddFontFallback、ClearFontFallbackChains によるスタイル認識 PDF フォント フォールバック チェーンは、ソース ファミリ、スタイル階層、グリフ カバレッジで埋め込みフェイスを選択し、ロード済みフェイスと選択をキャッシュし、補助スカラーとラン間書記素クラスタを保持し、共有グリフの Unicode 列を CID マッピングで区別し、未埋め込みフォントを使う代わりに PDF/A 出力を原子的に拒否します
  • TXLSPageImageExporter はページネーションを一度だけ構築し、選択した XLS / XLSX ページを、設定可能な DPI、スケール、品質、進行状況、キャンセル、ページごとのビットマップ ライフタイム付きで PNG / JPEG として増分的にエクスポートします。ExportRange は 1 つのタイトなセル矩形を書き出し、描画前/後イベントは、ピクセル境界、ページ サイズ、解像度、スケール、ページ番号、元のワークシートを含む読み取り専用コンテキストを通じて実際のページ キャンバスを公開し、マルチページ TIFF フレームを含む描画フレームごとに正確に 1 回発火します
  • TXLSCellImageExporter は、クラシック/XLSX どちらのセル矩形でも、ページネーション アーティファクトなしで 1 つのコンパクトな画像として計測・描画・保存します。設定可能な解像度、スケール、形式、JPEG 品質、透明 PNG または着色背景、オブジェクト/グリッド線/セル罫線の独立スイッチ、割り当て前に検証されるピクセル/バイト予算を備え、ファイル保存は失敗時に既存ターゲットを壊さない原子的な同フォルダ置換で行います
  • ODS エクスポートは、サポートされるスカラー数式、修飾された A1 参照、カスタム ブール検証、数式値の境界、リスト ソースを OpenFormula へ変換します。未サポートのセル数式方言は互換性フォールバックを保持し、未サポートの検証定義と参照は一緒に省略されます
  • ODS の繰り返し行高と空白セル スタイルはコンパクトな範囲を使います。ODS 出力は行高と繰り返しの書式付き末尾を保持し、単一行編集、クリア、ワークシート コピー、行シフト、タイリング、XLSX エクスポートは実効的な行高を保持します
  • プル モードの行供給 (OnNeedRow + RunRows) が、データ パイプラインからストリーミング ライターを 1 行ずつ駆動します
  • 右から左のワークシートは PDF エクスポートでミラー表示され、HTML では dir="rtl" で反転し、表示フラグのラウンドトリップが完成します
  • ワークシートのゼロ非表示モードは、数式結果、通貨値、日付基点のゼロを含む実際の数値ゼロを、表示形式やテキスト計測の前に、ビューアと視覚エクスポート全体で隠します。数式表示モードが優先され、条件付き書式の視覚とハイパーリンクはアクティブなまま、保存値、公開書式テキスト、CSV、ODS 出力は既存の契約を保持します
  • オプトインの追跡幅ストリーミング モード (TrackColumnWidths) はワークシートをメモリにステージングするため、完成ファイルは使用範囲の <dimension> ヒントと、列ごとに見られた最長値に合わせた列幅を運び、ストリーミング中にしか分からないデータに対して AutoFit を近似します
  • 参照安全な XLSX の行/列構造編集は、1 つの保護されたトランザクションで、数式、定義名、ルール、リンク、描画、印刷設定、保護範囲、クラシック/スレッド化コメント アンカー、スパークライン、型付きピボット ソースとビュー、認識可能な保存拡張参照を更新します。アプリケーション所有メタデータのための順序付き参加者 API を備えます
  • コンパクトなランダムアクセス XML ツリー (TSimpleDomReader) は同じプル リーダーから 1 パスで構築され、大文字小文字を区別する QName またはローカル名パスで、ワークブック メタデータ、リレーションシップ、テーマ、その他のパッケージ パーツを照会できます
  • TXLSFormulaTracer による正確なオペランド スタック遷移付きのステップ実行数式評価に加え、TXLSFormulaDebugger による対話診断が、パース済みノード、オペランド値、評価順序、セルと範囲の依存関係、遅延分岐の選択、スキップされた式、伝播したエラーの発生源を公開します
バージョン 2.384.120

ワークブック・レポート・レンダリングの完全な機能セット

現在のリリースでは、ワークブック、レポート、レンダリングの各 API が拡張され、実行パスには上限が設けられ、フォーマットの安全性に関するルールが明示されました

ワークブック形式と計算

  • TXLSXXmlMaps と TXLSXXmlCellBindings による編集可能な XML マップとセル単位のスキーマ バインディング。リレーションシップのラウンドトリップと保存前の検証を含みます
  • TXLSXWorkbookViews による順序付きマルチウィンドウのワークブック状態。アクティブなタブ、ジオメトリ、表示状態、表示フラグ、拡張、安全なシート インデックスの再マッピングを含みます
  • XLS と XLSX の両方で複数領域の選択とペインごとの独立したアクティブ セルをサポート。構造変更時の再マッピングと、無効な範囲の原子的な拒否を備えます
  • TXLSFormulaTokenStream、ParseFormulaTokens、GetFormulaTokens、FormulaTokensToText、SetFormulaTokens による、呼び出し側で所有するロスレスの数式トークン
  • クラシック XLS の数式フリーズは、数式テキストをデコンパイルせずにコンパイル済みの BIFF 参照を分類し、OnlyExternal モードでは確認できた外部ワークブック参照だけを変換します。不確かな数式はそのまま保持され、配列グループはリテラル文字列の結果を壊さずに原子的にフリーズされます
  • XLSX の外部ワークブック数式は、文法を認識する 1 つの数値スロット レクサーで厳密な変換、診断、再計算、ワークブック間コピー、生成保存を行います。ファイル名の互換性は、登録済みターゲットがちょうど 1 つだけ一致したときにのみ正規化されます
  • TXLSXExternalLink はソースのリレーションシップ ID、1 始まりのスロット、ワークブック / DDE / OLE / 未解決のリンク種別を公開します。ターゲットやシート リストの変更は、定数時間のリビジョン更新を通じてコンパイル済みの外部バインディングを無効化します
  • ConvertExternalDefinedNamesToRefErrors は、クラシック XLS と XLSX の両方で、確認できた外部ワークブック定義をネイティブの #REF! へ原子的に置き換えます。名前の識別情報、スコープ、可視性、コメント、マクロと組み込みのメタデータ、未知の XLSX 属性、通常のセル数式、外部リンク パーツは保持されます
  • TXLSSortFormulaMode による安定した行・列ソート。水平方向のキー、カスタム比較子、「論理依存の維持」と「数式の物理的な移動」のどちらかを選べます
  • BIFF2 から BIFF4 までのフォント、表示形式、XF スタイル、数式を編集対象として読み込み、ロード時に現在のワークブック モデルと計算モデルへ変換します
  • XLS、XLSX、CSV、TSV を 1 つの TXLSForwardReader コールバック ファサードで扱えます。バックエンド レベルの列投影、行範囲、数式の有無の状態、オプションで数式テキストの抑制、書式検出、キャンセルに対応します
  • ペイン、選択、フィルタ、ページ設定、改ページを型付きのカスタム ビューとして扱えます。未知の BIFF レコードは元のペイロードのまま保持されます
  • 型付きの OLAP プロパティ、Web テーブル セレクタ、固定長フィールド、接続パラメータ。拡張コンテンツは保持されます
  • AnalyzeFormulaIssues による診断で、存在しない関数、外部ワークブック参照、循環依存の正確な構成要素を検出します
  • スレッドセーフなグローバルおよびワークブック ローカルの UDF レジストリ。ローカルでの上書き、平均 O(1) のルックアップ、ロック外でのハンドラ呼び出しを備えます
  • XLSBidiVisualOrder により、アラビア文字やヘブライ文字、ラテン文字、数字、結合記号、鏡像句読点が混在するテキストを、論理的なセル テキストを変えずに処理します
  • 結合セルの AutoFit 戦略として、行や列の伸長を先頭メンバーまたは末尾メンバーに割り当てるか、結合範囲全体に均等に振り分けるかを選べます (XLS と XLSX の両方に対応)
  • 型付きの Excel 4 マクロシート保存に加え、参照専用の ScanMacroCommands がワークシート アドレス付きで検出結果を返します
  • ISOMITTED、ARRAYTOTEXT、VALUETOTEXT、PDURATION、RRI の計算をサポートし、Excel 互換の保存とエラー動作を持ちます
  • TXLSXWorksheet.Subtotal によるグループ化されたワークシート集計。挿入される数式、設定可能な総計、継承される表示書式、アウトライン階層を含みます
  • GetCellVisibleFormat による実体化なしの実効スタイル検査に加え、CheckDataValidation で候補レベルの検証と原子的なコミットを行います
  • クラシック XLS のメタデータのみのオープンと選択シート オープンは BOUNDSHEET オフセットと上限付き SST スピル ストレージを使い、XLSX・CSV・TSV と共通の 1 つの前方読み取り契約を共有します
  • 動的配列はスカラー集計へ直接ストリーミングされ、繰り返しルックアップは型付きの増分範囲キャッシュを再利用し、イミュータブルな数式トークンはステートレスなオブジェクトをコンパイル間で共有します
  • ネイティブ ローカル ピボットのマテリアライゼーションは、コンパクト、表形式、アウトラインのレポート グリッド、繰り返しラベル、既定の小計位置、複数のメジャー軸をサポートします。キャッシュされたセルとワイヤ メタデータは、Excel でのオープンと明示的な更新に対して検証済みです
  • ネイティブ ピボットの表示計算には、基本アイテム比較、累計、行と列のパーセント、親パーセント、累積パーセント、密ランクが含まれ、ネイティブのキャッシュ済み出力と更新メタデータを備えます
  • REGEXTEST、REGEXEXTRACT、REGEXREPLACE は共有数式予算付きのバンドルされた UTF-16 バックエンドを使用します。GROUPBY と PIVOTBY は、スコープ付きコールバック、複数メジャー、フィルター、並べ替え、階層合計、相対パーセントをサポートします
  • 範囲クリアと Unicode テキスト貼り付けは、保護チェック、スパースな内容スナップショット、モダン セル メタデータの復元付きで、1 つの有界な undo/redo トランザクションを使用します
  • 型付きのローカル PNG/JPEG セル内画像と、スパースなセル・行・列の Checkbox 形式は、アクセシビリティ メタデータ、優先順位、スタイル、内容所有権、構造編集を XLSX ラウンドトリップを通じて保持します
  • 拡張された XLSB の読み書きは、サポートされる数式とキャッシュ、名前、結合、ハイパーリンク、ペイン、テーブル、フィルターを保持し、明示的な未サポート機能の事前チェックを備えます
  • ネイティブ Linux x64 と macOS ARM64 のワークブック API は、実際のプラットフォーム サービスを使って、サポートされる XLSX、XLSB、ODS ファイルを読み込み、編集、計算、保存します
  • ネイティブ クラシック BIFF8 ワークブックは、Linux x64 と macOS ARM64 での編集、計算、大きなネストされたコンパウンド コンテナ、ドキュメント プロパティ、標準 RC4 または 128 ビット CryptoAPI 出力をサポートします
  • ネイティブ ピボット出力は、サポートされるレポート レイアウト全体で、数値・日付・手動のグループ化と 11 種類のカスタム小計関数をサポートします
  • ワークブック比較は、厳密な値型と正確な大きな整数、有限数値トレランス、オプションの数式キャッシュ、実効スタイル、ジオメトリ、リッチテキスト、有界なサポート機能定義(ローカル ピボット、スライサー、タイムライン状態を含む)を保持し、失敗時にスパース ストレージと以前の結果を保持します
  • ODS は通常のノート テキストと作成者、表現可能な値とカスタム フィルター、等価なパスワードなしの保護を保持し、正確な変換損失レポートを備えます。キャンセルされたストリーム保存は宛先を保持し、非ゼロ位置の保存は有効な ZIP オフセットを保持します
  • FORMULATEXT はターゲットを評価せずに保存された式を読み取ります。GETPIVOTDATA は、XLS、XLSX、隔離されたエバリュエーター全体で、有界な独立ローカル キャッシュからサポートされる可視集計を照会します。ネイティブ XLS のインライン キャッシュ値とレポート フィルター参照は識別を保持し、未完成または未サポートのキャッシュは明示的なエラーを生みます
  • INDEX、SORT、UNIQUE は計算済み配列と定数を受け入れるため、フィルタリング、並べ替え、重複排除、行や列の抽出が、自動 XLSX スピル サイズ変更と固定範囲 CSE 計算と直接合成できます。INDEX は向きを考慮したブロードキャストとセルごとの型付きエラー付きの行・列・領域セレクター配列を受け入れ、計算済みソースに対する領域 1 を受け入れ、定義名、LET、スカラー CHOOSE を通じてサポートされるスカラー複数領域参照の識別を保持します。例と境界については INDEX 領域選択を参照してください
  • 名前付きスタイルはリンクされた書式パーツとローカル上書きを保持し、組み込みの Light・Medium・Dark すべてのテーブル スタイルは、編集パスとエクスポート パスが使う実効書式へ解決されます
  • 統一された描画ファサードが DrawingML オブジェクトのグループ化・グループ解除を行い、画像・グラフ・テキスト ボックス・保持されたアンカー・入れ子のグループが混在する順序を、リレーションシップを壊さずに並べ替えます
  • TXLSFormatSnapshot はクラシックの書式一式をソース ワークブックから独立して取得し、IXLSRange.ApplyFormat でセル・行・列へ適用できます
  • クラシックと XLSX のワークブックが同じストリーミングの SaveSemanticSnapshot と増分 SHA-256 の ComputeSemanticHash API を公開します。Content と SecurityComplete のプロファイルに加え、ビューア状態・揮発性メタデータ・数式キャッシュを明示的に制御するオプションを備えます
  • 新しい XLSX シートは、互換性のある行優先の型付き一括書き込みを RLE パック形式のストレージに保持し、実体化なしで存在確認やストレージ統計の問い合わせに答えます。オブジェクト レベルのアクセスが必要になったときにだけ、一度だけ安定したセル オブジェクトへ展開します
  • クラシックと XLSX のセル ストアとワークシート コレクションは独立した構造世代を公開します。長時間動くリーダーも、値・数式・書式・名前変更・アクティブ化の編集を構造無効化と見なさずに、トポロジ変化を検出できます
  • セル ハンドルは既定スタイル状態をアロケーションなしで保持し、同一のスタイルのみ空セルは参照カウント方式のペイロードを共有します。後からの編集には copy-on-write の分離が効き、ストレージ統計では削減されたバイト数として測定できます

コンパイル済みレポートとデータ合成

  • TXLSCompiledReportTemplate はセル、リッチテキスト、コメント、スレッド化されたコメント、ハイパーリンク、描画、グラフ、ヘッダー、フッター、シート名、定義名、ドキュメント プロパティにわたるプレースホルダを一度だけコンパイルします
  • TXLSCompiledReportBand は、定義名による行・列・クロス集計バンドを、上限付きの 1 パス データ スナップショットから展開します。数式、依存オブジェクト、明示的な軸メタデータは保持されます
  • TXLSCompiledTableReportBand は 1 行の Excel テーブル テンプレートを展開します。ヘッダー、合計、フィルタ、並べ替え、数式、スタイル、構造化参照を保持し、本当に 0 行の結果も安全に扱います
  • IXLSReportTable、IXLSReportCursor、IXLSReportRandomAccessTable、TXLSReportMemoryTable が、仮想ソースとメモリ内ソースに共通の 1 つの契約を提供します
  • TXLSReportRelationIndex は、正確に型付けされた複合キーのバケットを一度だけ構築し、行ペイロードをコピーせずにマスター・詳細のルックアップを平均 O(1) で行います
  • IXLSReportTableProvider と TXLSReportDataContext は明示的なテーブルと遅延テーブルを登録し、BeginRun は大文字小文字を区別しないハッシュ ルックアップ、ネガティブ キャッシュ、決定論的なプロバイダ エラーのキャッシュ、同じエイリアスの再帰を即座に検出する、隔離された IXLSReportDataSession を作成します。コンパイル済みテンプレート、ランナー、範囲バンド、Excel テーブル バンドは論理的な 1 実行につき 1 つのセッションを自動的に使い、2 つの PreprocessAndRun パスは同じスナップショットを共有し、並行実行は隔離されたまま、成功・キャンセル・失敗のどの経路も戻る前にスナップショットを解放します
  • TXLSReportDataRequest と IXLSReportDataResolver は、順序付きの型付きパラメータ、ソース メタデータ、読み取り専用の実行制御、そして未処理・解決済み・未検出・データ エラーという明示的な結果を持つ名前付きまたはユーザー リクエストを追加します。リゾルバは大文字小文字を区別しないプロバイダ キーで登録されて O(1) のディスパッチを行い、レガシー プロバイダはアダプタ経由で互換性を保ち、明示的なテーブルが常に正とされ、同じエイリアスへの競合するフィンガープリントは 2 回目のリゾルバ呼び出しの前に拒否されます
  • TXLSReportDataLimits は、キャッシュされたエイリアス、名前付きおよびレガシー プロバイダ、テーブル スキーマ、名前、パラメータ、文字列、エラー メッセージに上限を設けます。不正なソース座標、制御文字、重複するパラメータ名、未対応の Variant コンテナ、無効な結果の組み合わせ、再帰、解決中のキャンセルはターゲットへのコミット前に失敗し、キャンセル時は未完了のキャッシュ エントリを削除して再試行しやすくなります
  • TXLSReportTableFactory は遅延評価の top・射影・union・分割カーソルに加え、行数・最小値・集計・重複を保持するハッシュ ジョインを提供します
  • TXLSReportQueryProvider は登録済みの読み取り専用クエリ定義だけをテンプレートに公開し、型付きパラメータと上限付きタイムアウトをホスト エグゼキュータへ渡します
  • TXLSCompiledSheetReportBand と TXLSCompiledOverflowReportBand は、前方カーソルから依存関係を認識するレコードごとのシートと上限付きの継続シートを作成します
  • TXLSReportIncludeLibrary は再帰的な名前付きインクルードを解決し、循環を決定論的に報告し、イミュータブルで再利用可能なライブラリとしてフリーズします
  • コンパイル済みレポートの条件、ルックアップ、正規表現、動的数式は、パース済みの式ノードと解決済みの列インデックスを再利用します
  • TXLSReportDynamicFormat と TXLSReportFormatEvent は、レコードを認識する表示形式、行の高さ、列の幅をコンパイル済みターゲットの粒度で適用します
  • IXLSReportImageDataProviderV2 と TXLSReportImageBinder は、上限付きバイト列または所有するストリームから型付きの画像ターゲットを解決します。ワークシート、バンド、テーブル、論理行、カーソル行、読み取り専用の現在行、アンカー、変換、キャンセル、サイズ上限のコンテキストが安定して渡され、ランナー、ジェネレータ、範囲バンド、Excel テーブル バンドは生成されたワークシート セルを走査せずに各ターゲットを直接バインドします
  • V2 のレポート画像は、上限付きの PNG・JPEG・GIF・BMP・EMF・WMF ヘッダーから物理サイズと DPI を求め、Natural、中央寄せの Contain、切り抜きの Cover、Stretch の各フィットをサポートします。安全でないラスタ ジオメトリは変更前に拒否され、アンカー相対のオフセットは XLSX と ODS のラウンドトリップを通じて保持されます
  • IXLSXImageBlob と TXLSXImageBlob により、繰り返し使う画像は 1 つのイミュータブルなラスターと SVG ペイロードを、1 回だけ計算する SHA-256 ダイジェストとオプションのキャッシュ キー付きで共有できます。XLSX と ODS は異なるメディア ペイロードをシート間で再利用し、再オープン時に共有ペイロードを復元します
  • 範囲バンドやシート バンドが展開されるとき、依存関係を認識するグラフの再バインドが系列・数式・名前・アンカーを変換します
  • TXLSCompiledReportRunner は開始・ターゲット・保存・終了の各フェーズを報告し、キャンセル、ストリームと原子的なファイル出力、正確な適用件数、隔離されたデータ セッションをまたぐ再利用可能な実行をサポートします。ErrorMode は互換性のある停止動作か、明示的に型付けされたデータ・プロバイダ・ゼロ除算・不正な正規表現の各障害を処理し続けるかを選択でき、StrictDataAccess は従来の空欄やセンチネル カウントの代わりに欠損データを露出させ、イミュータブルな LastResult スナップショットは順序付きの実行時問題と終端状態をランナー再利用後も保持します
  • レポートのストリーム・ファイル・暗号化ファイル出力は 1 つの段階的トランザクションを使います。致命的エラー、キャンセル、シリアライズ、ストリーム部分書き込み、ファイル置き換えの各障害では直前の完全な出力先が保持され、暗号化なしの成功出力はソース ワークブックの書式を維持します。大きなストリームのロールバック スナップショットは管理された一時ストレージへあふれます
  • レポート出力は、空の出力先ストリームに対してはバックアップ スナップショットをスキップします。出力に失敗した場合でも、出力先の内容と位置のロールバックは維持されます
  • コンパイル済みターゲットは動的書式設定の前に評価され、その後コンテンツ・表示形式・行の高さ・列の幅を正確なロールバック付きで原子的にコミットします。回復可能なセル診断は数式をクリアし、残りの基本スタイルを保持し、同じ基本フォントにはプールされた赤フォント・黄塗りの派生スタイルを共有します。安全な非セル ターゲットは元の値を保持し、構造ターゲットはフェイルファストのままです
  • TXLSReportRuntimeLimits は、保持する問題数、サニタイズ後のメッセージ長、問題のメモリにターゲット変更前の時点で上限を設けます。メッセージは 1 行に抑えられ、よくある資格情報はマスクされ、RuntimeDiagnosticsSheetName で構造化された診断ワークシートを 1 枚書き出すこともできます。このシートは生成されたワークブックと一緒にラウンドトリップします
  • TXLSReportGenerator はワークブック・ファイル・ストリーム・暗号化ファイルの各テンプレートについて、読み取りと生成のライフサイクル全体を所有します。ペアになったイベント、安定したワークシート コンテキスト、安全なキャンセル、原子的クローンによる出力の分離、そしてコンパイル済みランナーと同じ回復可能エラーとイミュータブル結果の契約を備えます
  • CloneRangeTo は選択したセルと識別情報を持つ依存オブジェクトを、複合参照の変換、重なりの事前チェック、固定ソースの線形繰り返しタイリング付きで複製します。全軸の条件付き書式と検証ターゲットは、各ターゲットを完全に含む構造編集とクローンに追従し、行全体・列全体・シート全体のセル コピーはスパース ストレージと安全な重なりコピー元スナップショットを保ちます。交差する仮想スタイル オーバーレイも、空の座標を広げずにコピーと再マップを行い、コピーした矩形の外側にある宛先のオーバーレイ書式はそのまま維持されます
  • TXLSReportPaginationPlanner は固定フッター、keep-together グループ、行の分割、類似スパンの統合、バランスの取れたレポート列を提供します
  • コンパイル済みレポートの分析、厳密実行、WriteDiagnostics は、不正なプレースホルダと欠損値をターゲット種別と正確なアドレス付きで報告します
  • TXLSReportTemplateChecker と TXLSReportTemplateMigrator はコンパイラのセマンティクスを再利用してテンプレートを検証し、サポート対象のレガシー プレースホルダ形式を変換します

アクセシビリティ、ベクター、画像、Web 出力

  • TXLSPDFTagMode と DocumentLanguage は、テーブル、行、意味的なヘッダー セルとデータ セル、Unicode 代替テキストを持つ説明的な XLSX 画像の Figure、ページごとの高密度な marked-content 識別子、結合セルのスパン、正確な親ツリー、そして装飾画像などの非意味的な描画の artifact 分離を備えた、自動 PDF 構造ツリーを生成します
  • TXLSPDFSignature は可視・不可視の署名フィールド、contained・covered・stretched の PNG 外観、ホスト提供の CMS データ、ダイジェスト コールバック、パッチ適用バイト範囲、そして「変更なし」「フォーム入力と署名」「フォーム入力・署名・注釈」の各 DocMDP 認証ポリシーを、秘密鍵を保存せずにサポートします
  • TXLSPDFAProfile は PDF/A-1a、1b、2a、2b、3a、3b を選択でき、出力コミット前にプロファイル検証が行われます。PDF/A-3 の関連ファイルは、詳細な AddAttachment オーバーロードを通じて Unicode 名、MIME タイプ、説明、バイト サイズ、更新時刻、そして Source・Data・Alternative・Supplement・Unspecified のリレーションシップを運びます
  • 再利用可能な PDF の開始・ページ・終了の進行状況報告とキャンセルにより、出力先ストリームの部分的な書き込みを防ぎます
  • スタイルを認識する PDF のフォント フォールバック チェーンは、グリフ カバレッジと埋め込みフェイスをキャッシュしつつ、補助文字、書記素クラスタ、抽出マッピングを保持します
  • 文脈に応じた複雑テキストのシェーピングが、リガチャ、結合記号の配置、アラビア文字の接続、ソース クラスタのマッピングをグリフ出力の前に適用します
  • ネイティブな軸方向・放射方向のマルチストップ PDF グラデーション、ストップごとのアルファ マスク、セルの塗りパターン、クリッピング、画像の影は、キャッシュされたグラフィックス リソースを再利用します
  • セル コメントは位置指定された Unicode PDF テキスト注釈にでき、末尾一覧出力 (comments-at-end) も引き続き使えます
  • TXLSSvgExport は範囲、ワークシート、ワークブック、ページ、名前付きオブジェクトをベクター テキストで描画し、オプトインの安全なリンク、グラフ、図形、画像にも対応します。ページ コールバックは一度に 1 つの完全な SVG を返し、決定論的な ID プレフィックスが埋め込みドキュメントを分離し、共有ページ レンダラが Excel のセル塗り、縮退した罫線、セルごとのフォントと配置、縮小して全体を表示、隣接セルへのあふれ表示を描きます
  • TXLSPageImageExporter は 1 つのページネーション セッションを再利用しながら選択したページを PNG または JPEG として増分的に生成し、あるいは選択したページを 1 つの LZW 圧縮マルチページ TIFF として原子的に書き出します
  • TXLSGraphicsBackend と共有のページネーション ジオメトリが、プレビュー、印刷、PDF、SVG、画像、HTML、オブジェクト配置を整列させます。シリアライザはフォーマット固有のエンコーディングを保持します
  • 上限付きの EMF/WMF デコーダーはレコードのエンベロープを検証し、エスケープ レコードを拒否してから、共有の Canvas と SVG ジオメトリを通じて安全なサブセットを再生します。対象は DC 状態スタック、ウィンドウ、ビューポート、ワールド変換、ストック オブジェクトを含むペン・ブラシ・拡張ペンのオブジェクト テーブル、矩形、楕円、折れ線、ポリゴン、ベジエ曲線、フィル・ストローク・結合パスを持つパス ブラケット、角丸矩形、円弧、弦、パイ、角度円弧、リージョンの塗りと枠、フォントと配置付きの上限付きテキスト ラン、そして PNG として再エンコードされる stretch-DIB 画像です。クリッピングとプライベート レコードはホワイトリストの外に置かれ、フェイルクローズで上限付きラスタ フォールバックに落ちます
  • クラシックと XLSX の HTML エクスポーターは、意味的な行見出し・列見出しと型付きの純 CSS ホット トラッキングを持つ明示的なスプレッドシート ビューを提供します。外部リンクは、script・data・blob・file・UNC・制御文字のターゲットを拒否する 1 つの URI サニタイザを共有します
  • XLSX の日付軸グラフはワークブック シリアルを連続座標として使い、1900 年のうるう日互換スロットを保持し、1904 年日付システムを尊重し、実際の暦日・月・年で目盛を進めます。これらは共有のページネーション、SVG、PDF、画像、プレビュー、印刷、ビューア、HTML の各レンダリングで共通です。省略された単位は表示中の全系列に対して一度推論され、自動密度は表示スパン、軸の幅、計測済みラベル フォント、表示形式、回転から決まり、設定された主罫線と補助罫線は同じ上限付き目盛コレクションを再利用します
  • XLSX の日付軸モデルは、基本・主・補助の各暦単位と日付軸の自動カテゴリ フラグの有無を独立して保持します。省略された ChartML 要素は省略されたままラウンドトリップし、明示的な日単位や false のブール値も同様です。型付きのクラシック日付軸拡張フィールドはすべての生の値とフラグを保持し、アクティブな値は XLSX 軸モデルへマッピングできます
  • 多レベルのカテゴリ軸は、リーフ優先のスパース キャッシュと生きた 2 次元範囲を保持し、省略されたラベルは継承しつつ明示的な空ラベルは境界として扱い、等しいラベルは親スパンの内側でのみマージします。逆順・右から左の順序と非表示カテゴリも尊重され、単一レベル出力用の NoMultiLevelLabels を公開します
  • セル由来のグラフ データ ラベルは系列ごとに独立した数式とインデックス化されたキャッシュを保持し、ローカル ワークシートの表示テキストをワークブック生成ごとに 1 回更新します。外部キャッシュは暗黙のアクセスなしで保持され、数式はワークシート コピーとレポート展開を通じて変換され、共有とポイントごとの表示設定はページネーション、SVG、PDF、画像、プレビュー、印刷、ビューア、HTML の各レンダリングで尊重されます
  • クラシック XLS と XLSX のワークブックはロスレスな 3 状態のオブジェクト表示ポリシーを共有します。非表示オブジェクトは範囲展開とメディア処理の前に除外され、ビューアは軽量な名前付きプレースホルダを描画し、PDF・SVG・ビットマップ・印刷・HTML の各エクスポーターは既定の完全オブジェクト出力を保ちつつプレースホルダ出力を選べます
  • 手動グラフ レイアウトはフィールドの有無と不正なソース トークンを独立して保持し、サイズを保つ上限付き配置で factor と edge の各モードを解決し、プロットの内側と外側のターゲットを区別し、タイトル・凡例・プロット領域・軸タイトルのジオメトリをページネーション、SVG、PDF、画像、プレビュー、印刷、ビューア、HTML 出力で共有し、サポート対象の ODF 位置を絶対的なグラフ距離を通じて変換します
  • XLSX の日付軸はラベルの表示形式とソース リンク状態を保持し、軸テキストのスタイル設定と時計回りの回転を適用し、逆方向を尊重し、重複や疎な日付でも連続した間隔をページネーション、SVG、PDF、画像、プレビュー、印刷、ビューア、HTML の各レンダリングで保ちます
  • 数式表示モードは、保護セルを認識した同じ最終テキスト、配置、2 倍を上限とする実効レイアウト幅を、ワークブック ビューア、プレビュー、印刷、画像、EMF、SVG、PDF、クラシック HTML、XLSX HTML の各パスで同じように解決します。保存値・数式キャッシュ・列幅は変更されません
  • フラットネス駆動の適応的 3 次 Bezier 円弧は、PDF・SVG・画像出力で 1 つの精度契約を共有し、スケールや離心率が要求する場合にだけ追加セグメントを割り当てます
  • PDF アウトラインは入れ子の Unicode ブックマーク、色、太字・斜体テキスト、展開・折りたたまれた子孫をサポートし、背景とオーバーレイのためのページ コールバックを備えます
  • 解決済みの名前付きテーブル スタイルと組み込みテーブル スタイルは、空セルを実体化せずに共有の HTML・PDF・画像・プレビュー・ビューアの書式設定へ流れます
  • TXLSSvgExport.SaveObjectAsSVG は、名前付きのグラフ・画像・図形をページ全体を切り出すことなく、正確なオブジェクト境界で描画します
  • HTML エクスポートはグラフと図形をインライン SVG として出力し、シート全体のラスタライズなしで SVG 画像、描画アンカー、リンク、サポートされる効果を保持します
  • TXLSXHtmlExportSession は共有スタイルを一度だけ走査した後、進行状況・キャンセル・リセットに対応しながらワークシートを増分的にエクスポートします
  • TXLSImageRenderEffects は、トリミング、明るさ、コントラスト、ガンマ、回転、不透明度、影をグラフィックス バックエンド全体で一貫して適用します
  • プリセット図形、調整ハンドル、コールアウト、フローチャート、テキスト ボックス、WordArt は、出力フォーマットをまたいで共有のベクター ジオメトリを使います
  • 高度なグラフ レンダリングは、誤差範囲、近似曲線、日付軸、数値の間隔、カスタム コンポーネントを先頭に並べるセル由来ラベル、そして財務の高値-安値バーとアップダウン バーをカバーします
  • 密度の高いラベルと円グラフのラベルは、最終的なベクター出力の前に決定論的な衝突調整と引き出し線の経路付けを受けます

アプリケーション コードで使える XLSX 機能

XLSX API は、単純なセル書き込みだけでなく、実務的なワークブック生成、レポート出力、ワークブック変更の各シナリオをカバーするようになりました

  • ワークシート構造 セル、数式計算、範囲全体と結合範囲にまたがる範囲 (結合範囲の直接検索/削除付き)、上限付き AutoFit による行/列サイズ、アウトライン、非表示の行と列、ウィンドウ枠の固定、アクティブ シート状態、非表示および very hidden シート
  • スタイルと表示 フォント、塗り、罫線、表示形式、配置、リッチテキスト、テーマカラー、インデックス カラー、tint と shade、斜め罫線、再利用可能なスタイル プール
  • Excel オブジェクト セル検索と範囲削除ヘルパー付きのハイパーリンクとコメント、アンカー検索と範囲削除ヘルパー付きの画像とスタンドアロンの描画テキスト ボックス、範囲を認識する検索/削除ヘルパー付きの条件付き書式と入力規則、名前による検索/削除ヘルパー付きの Excel スタイル テーブル、列の直接検索/削除ヘルパー付きのオートフィルタ抽出条件、タイトル検索/削除ヘルパー付きのグラフ オブジェクト、グラフ シート、スコープ付き検索/削除ヘルパー付きの定義名、HasVbaProject / VbaProjectDefined クエリと既存モジュールのソース検査/編集による VBA プロジェクト保持、ターゲット検索/削除ヘルパー付きの外部ワークブック リンク
  • ページとメタデータのサポート ワークシート表示モード、印刷範囲、タイトル行と列、グリッド線と見出しの印刷オプション、インデックス検索と範囲削除ヘルパー付きの手動改ページ、Date1904 ワークブック、ドキュメント プロパティ、アプリケーション メタデータ、ストリーム ベースの保存/オープン

同じワークブック データからの出力フォーマット

HotXLS はバイナリ ワークブック ファイルに限定されません。現在の API は、よくある連携先やレポート出力先への直接エクスポート パスを公開しています

XLS クラシック Excel 97-2003 ワークブックの読み書きと編集。所有スナップショット、任意の独立書式付き空白、フェイルファストなトポロジ検証を備えた定常状態のロード済みセル カーソル、ファイル/ストリームからの高速シート名検出、名前によるシート検索、ペイン ヘルパー、ワークブック アクティブ タブ、保存者メタデータ、既存モジュールのソース検査/編集付きの VBA ペイロード ロード/保存/クリア ヘルパー、ウィンドウのジオメトリ/状態制御、タブ、スクロールバー、オートフィルタ日付グループ化制御、ワークシート表示、グリッド線色、ウィンドウ枠固定 Window2 フラグの忠実度、アウトライン スタイル制御、ワークシート保護権限、上限付きバイト一致 BIFF プリンター ドライバー ペイロード保存付きのページ設定フラグ、コピー分離された公開ペイロード アクセス、XLSX への型付きフィールド優先変換、複数キー範囲並べ替え、組み込みセル スタイル、ドキュメント プロパティ、エクスポート ワークフロー
XLSX OOXML ワークブック生成、拡張された関数カバレッジ、1,048,576 × 16,384 のフル シート グリッド全体をカバーする A1 参照、そして OnUserFunction/OnUserFunctionEx を備えた数式計算、実体化されたスパース ブロックまたはパック ストレージ上の定常状態ロード済みセル カーソル (所有スナップショット、任意の独立書式付き空白、フェイルファストなライフタイム検証付き)、ロード済みセルのスキャンとコールバック書き込み、レポートの列幅と行高に対する上限付き AutoFit、ロック済みインデックス カラー保持、重み付き OKLab パレット量子化、プリフライト済み型付きプリンター設定を備えた SaveXLSXWorkbookAsXLS による決定論的なスパース XLSX→BIFF8 変換、コピー分離された公開ペイロード アクセス、正確なクリア セマンティクス、ぶら下がりリレーションシップ診断付きのバイト一致ワークシート プリンター設定パーツ保存、AES-NI 高速化とソフトウェア フォールバックを備えた Excel 互換 AES 暗号化の保存/読み込み (ECMA-376 Standard Encryption)、HasVbaProject / VbaProjectDefined クエリと既存モジュールのソース検査/編集による VBA プロジェクト保持、テンプレート テキストの検索/置換、設定可能なワークブック/範囲 HTML エクスポート、オートフィルタ抽出条件の直接検索/削除とプレビュー評価、埋め込み画像アンカーの直接検索/削除、範囲を認識する条件付き書式/入力規則の検索/削除、そして専用 lxHandleX ファサード経由のラウンドトリップ
XLSB 検証済みの値と基本スタイルを XLSX ファサード経由で提供します。型付き数値、ブール値、Unicode テキスト、通常のエラー、スタイル付き空白、ワークシートの可視性、通常のビュー、行と列の寸法、ページ余白、ZIP 圧縮、決定論的なタイムスタンプを含みます。完全なパッケージ ステージングと必須機能チェックが、宛先コミットの前に未サポートの数式、名前、機能オブジェクト、既定外の計算設定を拒否します
ODS styles.xml データ、行/列寸法、継承されたセル スタイル、基本的な数式変換、シート保護、名前付き範囲、型なしのキャッシュ済みスカラー値、日付の端数秒、負の時間幅を伴う OpenDocument Spreadsheet インポート。SaveAsODS による完全エクスポートでは、型付きセル値、数式、リッチテキスト、結合範囲、ハイパーリンク、画像、グラフ、条件付き書式、入力規則、ウィンドウ枠の固定、印刷範囲、アウトライン グループ、そしてオプションの TODSExportOptions 制御を、有効な ODF パッケージへ書き込みます
CSV / TSV OpenCSV による区切りテキスト インポート。自動区切り文字推定、BOM エンコーディング検出、RFC 4180 クォート、任意の値型推論、列ごとのインポート ディレクティブ、固定幅スライスを備えます。ワークブック/ワークシート/範囲のエクスポート ヘルパーには、ストリームとファイルのオーバーロード、スペース埋めの固定幅出力があります
HTML / RTF / PDF レポート、プレビュー、メール本文、ドキュメント受け渡し向けのテーブル指向エクスポート。選択範囲フラグメント、設定可能な HTML タイトル、テーブル レイアウト属性、ハイパーリンク アンカー、コメント ツールチップ、垂直配置スタイル、リッチテキスト ラン スタイル、条件付き差分スタイルと表示形式、カラースケール、方向付きデータバー、アイコン ファミリーのグリフ、最小テーブル出力を含みます。TXLSHTMLImport は、明示的な小数点記号付きで、選択した 1 つのトップレベル テーブルまたはすべてのテーブルを 1 始まりのターゲット セルへインポートでき、元の全テーブル オーバーロードもそのまま使えます。SaveWorkbookAsHTML は、表示中のすべての XLSX ワークシートを、シートごとの安定したアンカーとエスケープ済みシート名を持つ 1 つのナビゲート可能なドキュメントとして公開します。RTF は OpenRTF で逆インポートもでき、テーブル セルまたは段落リストを、既定では A1 へ、拡張オーバーロードでは明示的な 1 始まりのターゲット行と列へマップします。ワークブックの SaveAsPDF はすべての表示ワークシートを 1 つのドキュメントへ結合し、単色塗りと条件付き塗り、カラースケール、データバー、条件付きアイコン、フォント色、サイズ、太字、斜体、下線、配置、明示的な罫線、オプションのグリッド線をレンダリングし、印刷範囲、用紙サイズまたはポイント精度のカスタム用紙寸法、方向、余白、ズーム、横幅合わせ設定、列幅、行高、手動改ページ、繰り返しタイトル行と列、そして左右中央のヘッダーとフッターに従います。これには &F ファイル名と &Z パスのフィールド コードや、オプションのヘッダー/フッター帯の抑制が含まれます。横方向と縦方向の両方にわたって広い・高い範囲をページ分割します。CalculatePageCount は PDF オブジェクトを構築せずに完全な論理ページ数を報告し、1 始まりの FirstPage / LastPage は総ページ数フィールドを保持したまま出力範囲を選択します。TXLSPaginationModel はこれらの決定を、繰り返しタイトル、横→縦/縦→横の順序、10%〜400% のフィット スケーリング、描画配置を含む再利用可能な XLS/XLSX 論理ページとして、VCL 印刷プレビュー、PDF エクスポート、カスタム キャンバス、EMF 出力に公開します
ポータブル PDF / SVG / PNG ネイティブ ポータブル レンダリングは、独立したスカラーとシーンのスナップショットを転送し、描画順序とクリッピングを保持し、明示的なフォント ファイルを使った有界な Cairo レンダリングを使用します。ワークブック印刷プランは、再計算やソース変更なしで印刷範囲、タイトル、ページ設定、改ページ、フィット スケーリングを適用します

使用する理由

HotXLS はスプレッドシート生成を Delphi / C++Builder のプロセス内に留めます。そのため、Office オートメーションが脆かったり使えなかったりするデスクトップ ユーティリティ、バッチ ツール、サービス、インストーラーに適しています

RAD Studioのサポート

このパッケージは、XE5から現在のRAD Studio 13.1 FlorenceリリースまでのDelphiとC++Builderをターゲットにしており、バージョンごとのプロジェクトパッケージと出力フォルダを提供します

Free Pascal 3.2.2 と Lazarus/LCL も、ランタイム パッケージ Lib/FPC/HotXLSLaz.lpk 経由で Windows の Win32 / Win64 に対応しています。XLS/XLSX ワークブック API、ダイレクト ストリーミング、数式、LCL データセットと TDBGrid 向けの TDataToXLS / TGridToXLS エクスポート コンポーネントを含みます

パッケージのコンパイルは build-FPC-Lib.cmd Win64 または build-FPC-Lib.cmd Win32 で行い、ワークブックと圧縮のラウンドトリップ検証は Tests/Lazarus/Run-HotXLSLazarusSmoke.cmd Win64 またはその Win32 版で行います。カスタム インストールでは LAZARUS_DIR を設定してください

Windows の LCL アプリケーションは、HotXLS ユニットより前に LCL の Interfaces ユニットを含め、ユニット検索パスに Lib と Lib/FPC を、インクルード検索パスに Lib を追加する必要があります。VCL デモ フォーム、VCL ワークブック ビューア、DevExpress グリッド アダプタは引き続き Delphi/C++Builder コンポーネントです

ネイティブ Linux x64 と macOS ARM64 のアプリケーションは、サポートされるクラシック XLS、XLSX、XLSB、ODS モデルを読み込み、編集、計算、保存します。クラシック BIFF5 のテキストは明示的に宣言されたコードページを使用し、BIFF8 の圧縮 Unicode は正確な UTF-16 コード単位を保持します。ネイティブの計算と検索は、Unicode の大文字小文字照合を保持します

サポートされるレガシー グラフ テキストは、コードページが変わるときにトランスコードされ、表現できない、または未サポートのバイトテキスト移行は、呼び出し側の出力を変更する前に拒否されます。繰り返しの ZIP 読み取りは以前のヘッダー メタデータを解放し、名前付きスタイルのルックアップには最初に保存されたエントリが含まれます

アプリケーションのセットアップ、レガシー エンコーディングの契約、regex 互換性の詳細は、Free Pascal と Lazarus のサポートを参照してください

ポータブル出力サブシステムは、FPC、Cairo、FreeType、HarfBuzz、FriBidi を使って Linux と macOS 上でネイティブの PDF、SVG、PNG をレンダリングします。サポートされるネイティブ ワークブック コアからの不変スナップショットを消費し、明示的なフォント ジオメトリとリソース予算を備えます

配布しやすさ

ソースコード、パッケージ、ビルドスクリプト、デモ、ローカルのHTMLドキュメント、およびインストーラー統合がすべて含まれているため、開発チームはWebサービスに依存することなく構築、テスト、および出荷を行うことができます

開始点

ライブラリを評価したり、プロジェクトに組み込んだりする場合は、まずこれらのローカルファイルを使用してください