losLab ソフトウェア開発ブログ

HotXLS Component

Software Development Blog

HotXLS Component

HotXLSを使用してDelphiでAgile暗号化されたExcelファイルを読み取る

HotXLSがDelphiでAgile暗号化されたXLSXを読み取る方法:OpenEncryptedがEncryptionInfoを解析し、SHA-512スピンカウントによる鍵派生を実行し、AES-CBCセグメントを復号します HotXLSは、Excel 2010以降のすべてのバージョンでデフォルトで適用されるパスワー

HotXLS Component

DelphiにおけるBIFF8 PivotTableの書き出し:SXDBとSXLI

PivotTableは.xlsバイナリフォーマットで最も複雑な構造です。。HotXLSが独立したピボットキャッシュを構築し、DelphiでSXDBBレコードをパックする方法を解説します レガシーなExcelバイナリ形式のほぼすべての部分は、すっきりとした2バイトのタイプと2バイトの長さを持つ単一のレコードです

HotXLS Component

DelphiでCF_HTMLクリップボード形式を実装する

HotXLSを使ってDelphiでCF_HTMLクリップボードペイロードを構築し、正確なバイトオフセットを使ってExcelの範囲をスタイルを保ったままWordやブラウザに貼り付けられるようにする

HotXLS Component

HotXLSでのグラフと画像:DelphiでのExcel描画オブジェクト

HotXLSを使用してDelphiでExcelグラフ、画像、図形を追加する方法:XLSのグラフシート、XLSXの埋め込みグラフと画像、EMUサイズ指定、アンカー処理を解説 ワークシートのグリッド上に浮かぶもの(グラフ、ロゴ、スタンプ、コールアウトボックスなど)はすべて描画オブジェクト(Drawing

HotXLS Component

DelphiでのExcelからCSV、TSV、およびHTMLへのエクスポート (HotXLS)

HotXLSを使用してDelphiでExcelシートをCSV、TSV、HTMLへ出力する方法:RFC 4180クォート、UTF-8 BOM、および出力前に数式の再計算が必要な理由について解説 コード内で請求書ワークブックを構築し、それを後流のシステムがインポートするためのCSVとして出力する夜間ジョブを想像してください

HotXLS Component

DelphiにおけるExcelの日付シリアル値:1900年 vs 1904年とnumFmt

Excelの日付は、どの基準日(エポック)からカウントされるかがわかるまでは単なる数値です。。1900年と1904年のシステムが1462日異なる理由と日付フォーマットの判定について解説します スプレッドシートを開き、 と表示されているセルをクリックすると、数式バーは日付のままで読み取られます

HotXLS Component

Delphiでの定義された名前とシートをまたぐ数式 (HotXLS)

HotXLSを使用してDelphiでブック・シートレベルの定義された名前を作成し、編集に耐えるシート間参照の数式を記述し、_xlnm名前衝突を回避する方法 定義された名前(Defined Name)とは、定数、セル範囲、または数式を代表するラベルのことであり、ワークブックに一度だけ保存され、必要に応じてどこからでもシン

HotXLS Component

HotXLSを使用したDelphiでの動的配列スピル数式

HotXLSを使用して、DelphiでExcel 365の動的配列スピル数式を評価します。SetArrayFormulaを介して、XLOOKUP、FILTER、SORT、UNIQUE、SEQUENCEを配置できます。 HotXLSは、DelphiおよびC++BuilderでExcel

HotXLS Component

Delphiエンジニアリング関数:基数変換、複素数演算

ExcelのDEC2BIN、HEX2DEC、IMSUM関数は、10ビットの2の補数と文字列エンコードされた複素数演算を隠蔽しています。HotXLSがDelphiでこれらをどのように実装しているかをご覧ください。 Excelのエンジニアリング関数ファミリーは、関数リファレンスの中で最も簡単な部分のように見えます

HotXLS Component

DelphiでのHotXLS数式エンジンとカスタム関数

HotXLSを使用してDelphiでExcel数式を評価する方法:Calculateエンジン、OnUserFunctionカスタム関数、配列数式、およびCSV出力で計算値が必要な理由について解説 数式文字列のみを保存するスプレッドシートライブラリと、動作する数式エンジンを備えたライブラリは、数値を要求する瞬間まではまっ

HotXLS Component

DelphiでExcelの数式評価をステップバイステップでトレースする

Excelは数式を一度に1ステップずつ評価できます。Delphiのスプレッドシートの監査やデバッグのために、HotXLSがそのステップバイステップの簡約をどのように再現するかを紹介します。 Excelは、見えやすい場所に小さなデバッガーを隠し持っています。セルを選択し、「数式」を開いて「数式の検証」をクリックすると、ダ

HotXLS Component

HotXLSで行を挿入した際の数式参照の調整

DelphiでXLSXの行や列を挿入・削除する際、相対参照、絶対参照、範囲参照などのA1数式参照をHotXLSが自动でシフトし、削除領域への参照を#REF!に変換する仕組みを解説 HotXLSは、XLSXワークシートに行や列を挿入または削除した際、数式参照を自動的に調整します。エンジンの 、 、 、および

HotXLS Component

DelphiにおけるHotXLSの画像ジオメトリ: EMU、cm、スケーリング

Delphi の HotXLS で埋め込み XLSX 画像を物理寸法で扱う方法を解説します。EMU 単位、センチメートルとポイントのジオメトリ、アスペクト比を維持するスケーリング、cm 余白まで扱います。 600×400 ピクセルのロゴを生成した請求書のヘッダーに入れると、96 DPI

HotXLS Component

DelphiでのHotXLSインクリメンタル数式再計算

HotXLSのWorkbook.Recalculateが数式依存関係グラフを構築し、ダーティなセルのみを再計算する仕組み:揮発性関数、トポロジカル順序、循環参照の検出を解説 DelphiおよびC++Builder向けのネイティブなExcelライブラリであるHotXLSは、 を介してインクリメンタル数式再計算を実行します

HotXLS Component

Delphiでの循環参照に対する反復計算

HotXLSを使用して、Delphiで意図的な循環参照を解決します。Iterate、IterateCount、IterateDeltaを介した反復計算の仕組みと、循環が収束するプロセスを解説します。 Delphiで意図的な循環参照を計算するために、HotXLSはXLSXエンジンで反復計算をサポートしています

HotXLS Component

HotXLS Component: Delphi での large workbook performance

HotXLS Component の large workbook performance を、アーキテクチャ判断、診断、検証、境界ケース、Delphi/C++Builder のチェック項目から解説 Delphi または C++Builder コードから直接 Excel ワークブックを作成、編集、検査、計算、エクスポー

HotXLS Component

DelphiでのロスレスなXLSXラウンドトリップ:Theme、extLst、calcChain

DelphiコードでXLSXファイル内の1つのセルを編集する際、HotXLSがカスタムテーマ、不明なextLstブロック、およびcalcChainを維持する方法と、ラウンドトリップの再現性の限界について解説します DelphiおよびC++Builder向けのネイティブExcelライブラリであるHotXLSは、ロスレスな

HotXLS Component

HotXLS Component: Delphi での ODS open, save, and round-trip

HotXLS Component の ODS open, save, and round-trip を、アーキテクチャ判断、診断、検証、境界ケース、Delphi/C++Builder のチェック項目から解説 Delphi または C++Builder コードから直接 Excel ワークブックを作成、編集、検査、計算、エ

HotXLS Component

Excelが暗号化されたワークブックを拒否する理由:ECBとRC4

パスワードは正しいもののExcelが破損を報告する、2つの暗号化バグについて説明します。。ECBとCBCの混同やRC4キー再生成のズレがDelphiで相互運用性を損なう原因を解説します あなたがワークブックを作成してパスワードで暗号化し、そのファイルを同僚に渡してExcelで開かせるとします

HotXLS Component

HotXLS Component: Delphi での Office-free workbook automation

HotXLS Component の Office-free workbook automation を、アーキテクチャ判断、診断、検証、境界ケース、Delphi/C++Builder のチェック項目から解説 Delphi または C++Builder コードから直接 Excel

HotXLS Component

Delphiでの並列XLSXパース:メモリマネージャのボトルネック

Delphiでスレッドを追加するとXLSXのパースが遅くなる理由と、HotXLSがセルあたりのヒープ割り当てを20から9.1へ削減し、1.90倍の並列高速化を達成した方法を解説します DelphiおよびC++Builder向けのネイティブExcelライブラリであるHotXLSは、3段階のロード処理(シートXMLのシリア

HotXLS Component

DelphiでHotXLSを使用してExcelピボットテーブルを構築および更新する

HotXLSを使用してDelphiでXLSXピボットテーブルを構築:AddPivotTable、集計アイテムと集計フィールド、showDataAs値表示、日付グループ化、およびインプロセス更新 HotXLSは、ExcelのインストールやCOMオートメーションを使用せずに、DelphiおよびC++Builderからネイテ

HotXLS Component

DelphiでのHotXLSを使用したR1C1数式表記

HotXLSを使用してDelphiでR1C1数式をコンパイルする方法:セルごとに R2C3、R[-1]C[2]、RC などを解決する GetCompiledFormulaR1C1 により、1つの相対数式で列全体に入力可能 HotXLSは、 を介して、R1C1参照表記で記述された数式をコンパイルします

HotXLS Component

DelphiでのExcelスパークライン:HotXLSとx14拡張

HotXLSを使用してDelphiでExcelスパークライン(折れ線、柱、勝敗)を作成する方法:ARGBカラースロット、およびExcel 2010以降が描画するx14 extLst拡張ブロックについて解説 HotXLSは、DelphiおよびC++Builderから、Excelのスプレッドシート内の単一のセルに描画される

HotXLS Component

DelphiでのExcel統計関数:NORM、CHISQ、BETA

ExcelのNORM、CHISQ、BETA関数は高度な数値解析を内包しています。HotXLSがDelphiで正則化ガンマ関数およびベータ関数を使用してこれらを計算する仕組みと、Log関数のバグについて解説します。 セルに と入力すると、Excelは即座に0.8413447を返します

HotXLS Component

Delphiで巨大なXLSXファイルを読み込まずにストリーミングする

100万行のXLSXをメモリに収める必要はありません。Delphiにおいて、HotXLSがDOMを使用しないストリーミングリーダーを使用し、ほぼ一定のメモリでワークシートのパーツをどのようにスキャンするかを紹介します。 100万行と十数個の列を持つスプレッドシートは、データベースのレポートジョブからのごく普通のエクスポ

HotXLS Component

Delphiで100万行のXLSXを定数メモリで書き込む

巨大なXLSXの生成は行数に比例して増加するべきではありません。DelphiでHotXLSがインライン文字列を使用し、共有文字列テーブルなしでOOXMLをどのようにストリーミングするかをご覧ください。 レポートジョブは1年間は問題なく実行されます。ワークブックを構築し、クエリが返すものをシートに入力して保存します

HotXLS Component

HotXLSにおけるDelphiのSUBTOTALとAGGREGATEの隠し行

v2.197.0以前のHotXLSでSUBTOTAL 109とSUBTOTAL 9が同じ合計を返してしまう理由と、行の非表示状態を問い合わせるコールバックがDelphiでAGGREGATEの隠し行を修正する仕組みを解説

HotXLS Component

DelphiとHotXLSを使用したExcelファイルでのスレッドコメント

HotXLSを使用してDelphiでExcel 365スレッドコメントを書き出す方法:AddThreadedComment返信チェーン、personパーツ、および従来のメモとの違いを解説 Delphiからワークブックを生成し、従来のコメントAPIを使用してセルに注釈を追加すると、Excel

HotXLS Component

DelphiでのUnicodeセーフなスプレッドシートエクスポート:RTFとHTML

非ASCIIテキストは、RTF、HTML、CSV、ZIPエクスポート全体で疑問符に崩れる可能性があります。HotXLSがDelphiでのすべてのエクスポートパスでUnicodeを無傷に保つ方法をご覧ください。 スプレッドシートには顧客名の列が含まれています。いくつかは中国語で、いくつかはキリル文字で、いくつかはドイツ語

HotXLS Component

HotXLS Component: Delphi での XLSX AES-protected output

HotXLS Component の XLSX AES-protected output を、アーキテクチャ判断、診断、検証、境界ケース、Delphi/C++Builder のチェック項目から解説 Delphi または C++Builder コードから直接 Excel ワークブックを作成、編集、検査、計算、エクスポート

HotXLS Component

DelphiでのXLSXシート保護: 15個の許可オプション

操作ごとのXLSXシート保護をDelphiで設定するHotXLS。15個のAllowOption権限ビット、OOXMLの「省略=許可」ルール、往復保存でも壊れにくい解析に対応します。 完成したブックを同僚に渡して、書き換えではなくフィルターだけ使ってほしいと頼むことがあります。そこでシートを保護します

HotXLS Component

HotXLSを使用してDelphiでXLSXワークシートを複製する

HotXLSのDuplicateおよびCopyFromを使用してDelphiでスタイル設定されたXLSXワークシートをクローン:ディープコピーされる内容、シャローコピーにとどまる内容、および複製先でグラフを再構築する方法について解説します 1枚のワークシートを完璧に作り上げたとします