losLab 軟體開發部落格

HotXLS 元件

Software Development Blog

HotXLS 元件

在 Delphi 中使用 HotXLS 讀取 Agile 加密的 Excel 檔案

HotXLS 如何在 Delphi 中讀取 Agile 加密的 XLSX 檔案:OpenEncrypted 會解析 EncryptionInfo,執行 SHA-512 spin-count 金鑰衍生,然後解密 AES-CBC 區段。 HotXLS 可透過單一呼叫: ,來讀取 Agile 加密的 Excel 檔案(這是

HotXLS 元件

在 HotXLS 中分割錨定條件格式

說明當使用者實際執行的列或欄編輯操作,導致原本的規則範圍被意外分割開來時,HotXLS 如何在 Delphi 應用程式中把條件格式與資料驗證規則拆分為具備優先順序的多個獨立規則物件

HotXLS 元件

用 HotXLS 在工作表內嵌 BIFF8 圖表物件

HotXLS 以 OBJ type-5 宿主控制項把 BIFF8 圖表子串流錨定到工作表,讓圖表坐在資料旁邊而不是獨佔一張圖表工作表,並交代 A1 範圍參照與 Unicode 字串解碼的地雷

HotXLS 元件

在 HotXLS 中安全重播不受信任的 EMF 與 WMF

HotXLS 把工作表中繼檔圖片解碼成有界限的命令場景,而不是把位元組交給 GDI 播放,以明確預算與 fail-closed 解析層層把關,拒絕的圖片不傷害活頁簿,伺服器渲染不受信任附件也站得住腳

HotXLS 元件

在 Delphi 中讀取 Excel 快取公式值而不觸發重算

HotXLS 在 Delphi 中讀取 Excel 早已存放在公式儲存格旁的快取值,完全不觸發重新計算、不反組譯公式語彙,也不更新髒旗標,讓 ETL 批次作業保持快速,來源活頁簿逐位元組維持原樣

HotXLS 元件

在 Delphi 中實作 CF_HTML 剪貼簿格式

使用 HotXLS 在 Delphi 中建構 CF_HTML 剪貼簿內容格式,讓 Excel 儲存格範圍貼到 Word 文件或瀏覽器頁面時仍能保留原有樣式,並精確計算位元組偏移量數值

HotXLS 元件

HotXLS 圖表與圖片:Delphi 中的 Excel 繪圖

說明如何從 Delphi 使用 HotXLS 新增 Excel 圖表、圖片與形狀物件:XLS 格式的圖表工作表、XLSX 格式的內嵌圖表與圖片、EMU 尺寸計算方式,以及常見錨點陷阱

HotXLS 元件

Delphi HotXLS 中的 Excel 條件式格式評估

說明 HotXLS 如何在 Delphi 中於完全脫離 Excel 執行環境的情況下求值條件式格式規則,以及 Excel 16 測試釘住的前 10% 百分比、高於平均與重複值等案例

HotXLS 元件

在 Delphi 中使用 HotXLS 實作即時跨活頁簿公式

跨活頁簿參照通常只解析到 Excel 上次快取的舊值。HotXLS 讓你以 RegisterExternalWorkbook 註冊記憶體中的第二份活頁簿,公式改為即時求值,取消註冊後才回退外部連結快取

HotXLS 元件

Delphi 中使用 HotXLS 建立自訂試算表網格

HotXLS 元件的 Delphi 與 C++Builder 技術文章,涵蓋試算表處理、PDF 匯出、VBA 與診斷功能 HotXLS 提供 原生 VCL 控制項,可在 Delphi 或 C++Builder 視窗體內將 XLS、XLSX、XLSM 和 ODS 活頁簿渲染為互動式試算表網格,無需安装

HotXLS 元件

HotXLS 資料驗證、自動篩選與表格:Delphi

使用 HotXLS 從 Delphi 加入下拉式驗證清單、AutoFilter 篩選條件與 Excel 表格功能三大類,涵蓋伺服器端篩選預覽機制,以及欄位 ID 從零開始起算的陷阱

HotXLS 元件

Delphi 中的 Excel 日期序號:1900 與 1904 及 numFmt

Excel 日期在你知道它從哪個紀元開始計數之前,只是一個數字;看看 1900 與 1904 系統如何相差 1462 天,以及 numFmt 如何標示日期 開啟試算表,按一下顯示 的儲存格,公式列仍然顯示日期;從 Delphi 讀取同一個儲存格,您會得到數字 。這兩種檢視都正確,因為 Excel

HotXLS 元件

用 HotXLS 深度重算稽核 Excel 公式快取

HotXLS 把整張相依圖重算進隔離的 overlay,逐一比對快取值並回報每個不符的儲存格,除非您要求,否則不對工作簿做任何寫入;失敗會分類成不同種類,失敗鏈以堆疊形式指認真正出錯的儲存格

HotXLS 元件

HotXLS 定義名稱與跨工作表公式:Delphi

使用 HotXLS 在 Delphi 應用程式中建立活頁簿範圍與工作表範圍這兩種不同層級的已定義名稱物件,撰寫能承受後續編輯的跨工作表公式,並避免與 _xlnm 保留命名空間發生衝突

HotXLS 元件

Delphi 中的工程功能:基數轉換、複數

Excel 的 DEC2BIN、HEX2DEC 和 IMSUM 函式隱藏了十位元二補數和字串編碼的複數運算。了解 HotXLS 如何在 Delphi 中實現它們 Excel 中的工程系列函式讀起來像是函式參考中最簡單的角落。 將數字轉換為二進位字串。 將其轉換回來。 將兩個複數相加。每一個看起來都像是一個格式化練習

HotXLS 元件

HotXLS 檔案監控回呼在 Delphi 中的死結

HotXLS 在背景工作執行緒等待時於主執行緒觸發 TXLSFileMonitor 事件,所以在 OnFileChanged 裡停掉監控、又沒有執行緒歸屬資訊可以判斷時就會死結,修法是讓執行緒物件記錄目前正在執行的 callback

HotXLS 元件

在 Delphi 中逐步追蹤 Excel 公式求值過程

Excel 應用程式本身其實可以一次一步地逐步求值計算每一條公式的完整內容細節。了解 HotXLS 如何在 Delphi 中重現這種逐步化簡的計算過程,方便對試算表進行稽核與除錯作業

HotXLS 元件

在 HotXLS 中插入列時的公式參照調整

說明 HotXLS 如何在 Delphi 應用程式中於插入或刪除列與欄時正確位移每一個 A1 公式參照位址內容:相對與絕對參照的差異、範圍端點處理方式,以及 #REF! 錯誤觸發規則

HotXLS 元件

在 HotXLS 中讀取 GIF、BMP 與 JPEG 的標頭幾何資訊

HotXLS 從 GIF、BMP 與 JPEG 標頭讀出真正的像素尺寸,讓 AddPicture 寫入真實幾何,而不是用會把圖片拉長的 100x100 後備值;三種格式各自有獨立的標頭讀取器,讀不出來時明確回傳 -1

HotXLS 元件

在 Delphi 中的 HotXLS 增量公式重新計算

HotXLS 的 Workbook.Recalculate 會在 Delphi 中建立公式相依關係圖,只重新求值真正變動過的儲存格:涵蓋易變函式處理、拓樸排序演算法與循環參照處理機制

HotXLS 元件

在 Delphi 中修補大型 XLSX 中的單一工作表

每晚只換一張資料工作表,不必重新載入並重存整份活頁簿。HotXLS 的 TXLSDirectWriter.BeginPatch 只重寫目標工作表,圖表、樞紐分析快取與樣式全以壓縮位元組原樣帶過

HotXLS 元件

Delphi 中的循環參照疊代計算

使用 HotXLS 在 Delphi 中解決刻意設計的循環參照問題:透過 Iterate、IterateCount 與 IterateDelta 三個屬性進行疊代計算,並說明循環如何逐步收斂

HotXLS 元件

HotXLS 查閱掃描與假循環參照

為什麼在包含公式自身的欄上做 VLOOKUP 在 Excel 中是合法的,以及 HotXLS 如何把掃描邊與排序邊分開,杜絕整欄查閱範圍造成的假循環參照誤報,又不削弱真正的循環偵測

HotXLS 元件

HotXLS 合併儲存格與報表範本版面:Delphi

說明 HotXLS 在 Delphi 報表範本中如何處理合併儲存格:錨點儲存格語意規則、InsertRows 位移邏輯、合併範圍稽核機制,以及 HTML 與 RTF 匯出時的行為差異

HotXLS 元件

HotXLS 的僅中繼資料與選擇性 XLSX 載入

用 Delphi 開啟大型 XLSX 而不剖析每張工作表,HotXLS MetadataOnly 探索工作表名稱與屬性 SelectedSheets 只載入具名子集,隨需 LoadSheet 與 PreserveRawParts 讓活頁簿往返保持無損且大幅降低記憶體占用 HotXLS 能開啟一份 XLSX

HotXLS 元件

從 Delphi 將 Excel 活頁簿匯出為 PDF/A

HotXLS 可在 Delphi 中將試算表匯出為封存等級的 PDF/A,內嵌 sRGB 輸出意圖、pdfaid 中繼資料,並符合封存驗證工具會檢查的字型規則

HotXLS 元件

用 HotXLS 在 Delphi 框住 BIFF PivotCache 記錄

BIFF PivotCache 子串流按記錄主體版面、而不是記錄編號來框定 SXDB、SXDBB 與 SXFDB,HotXLS 從每個子串流的第一筆記錄鎖定方言,並以 CanUpgradeFraming 判定改寫快取何時無損

HotXLS 元件

用 HotXLS 編輯 Excel 圖表而不流失 ChartML

當你在 Delphi 應用程式中編輯圖表標題文字、數列內容與座標軸設定時,HotXLS 會完整保留匯入 Excel 圖表的原始 ChartML 內容,並支援建構具備雙座標軸的組合圖表

HotXLS 元件

Delphi 中 XLS、XLSX、ODS 與 CSV 的拉取列游標

HotXLS 如何在 Delphi 中用同一個拉取列游標 TXLSRowCursor 統一 XLS、XLSX、ODS、CSV 與 TSV 的串流讀取:六值顯式狀態機、具冪等性的 Cancel、借用的列視圖,記憶體中只保留目前一列

HotXLS 元件

使用 HotXLS 在 Delphi 中處理 R1C1 公式標記法

使用 HotXLS 在 Delphi 中編譯 R1C1 公式:GetCompiledFormulaR1C1 針對每個儲存格解析 R2C3、R[-1]C[2] 與 RC,因此一個相對公式即可填滿一欄 HotXLS 透過 編譯以 R1C1 參照標記法寫出的公式,該方法接受 (絕對參照)、 (相對位移)與

HotXLS 元件

HotXLS 的列塊儲存格儲存與串流 XLSX 儲存

說明 HotXLS 如何讓大型 Delphi 活頁簿在整體記憶體使用量上持續保持精簡狀態:256 列一組的儲存格區塊設計、永不具現化空儲存格的區間樣式疊加設計,以及完整串流儲存機制

HotXLS 元件

Delphi 中的 Excel 統計函式:NORM、CHISQ、BETA

Excel 的 NORM、CHISQ 與 BETA 函式背後藏著真正的數值分析。看看 HotXLS 如何在 Delphi 中用正規化 gamma 與 beta 計算它們,以及一個 Log 錯誤 在儲存格中輸入 ,Excel 便會不動聲色地回傳 0.8413447。這個呼叫看起來像查表,但其實不是

HotXLS 元件

HotXLS 串流寫入:Delphi 伺服器批次作業

使用 HotXLS 的 StreamingWrite 功能讓大型 XLSX 匯出作業保持在記憶體限制範圍內:列層級寫入回呼機制、樣式集區重複使用,以及每執行緒一份活頁簿的批次作業模型

HotXLS 元件

HotXLS 中用結構化診斷替代布林結果

HotXLS 以結構化診斷資訊完全取代傳統布林值的 Save 與 Open 傳回結果內容:提供穩定的錯誤代碼、嚴重程度分級機制,以及供各類 Delphi 應用程式使用的工作表脈絡資訊

HotXLS 元件

以 HotXLS 從 Excel 圖片產生加標籤 PDF 圖形元素

HotXLS 如何把攜帶替代文字的工作表圖片變成獨立的 PDF Figure 結構元素,並為整個可見實例標記範圍,以及為什麼每一頁只能有一個 MCID 配置器,結構才不會悄悄指向錯誤的內容

HotXLS 元件

HotXLS 搭配 Delphi:範本驅動的 Excel 報表生成

使用 HotXLS 從 Delphi 應用程式填入既有的 Excel 報表範本:以 FindText 定位佔位符記號、複製並展開明細列、安全地插入資料列,並在儲存前重新計算範本中所有公式

HotXLS 元件

HotXLS:Delphi 中保留 VBA 巨集與外部連結

說明 HotXLS 在 Delphi 程式碼編輯 XLS 與 XLSX 活頁簿內容時,如何完整保留 VBA 巨集專案與外部連結內容:巨集儲存語意、連結目標保留,以及往返轉換的實際限制

HotXLS 元件

HotXLS:Delphi 活頁簿審核與格式轉換

使用 HotXLS 從 Delphi 稽核來源不明的 Excel 檔案內容:統計其中的圖表、公式、巨集與保護機制數量,再依已知的保真度限制轉換 XLS、XLSX 與 ODS 三種格式

HotXLS 元件

Delphi 活頁簿的 HotXLS 讀取租用與寫入防護

HotXLS 如何在 Delphi 中協調活頁簿的讀寫:以 O(1) 讀取租用、速敗寫入防護、可重入交易與世代計數器,讓背景執行緒的長時間掃描與 UI 執行緒的儲存格編輯不再互相踐踏

HotXLS 元件

Delphi 中的 XLOOKUP 與 XMATCH 二分搜尋模式

說明 HotXLS 如何在 Delphi 中求值 XLOOKUP 與 XMATCH 函式:合法的比對與搜尋模式選項、O(log n) 二分下降演算法、重複鍵邊界處理,以及萬用字元被拒絕的原因

HotXLS 元件

Delphi 用 HotXLS 以 AES 加密 XLSX 檔案

使用 HotXLS 的 SaveAsEncrypted 從 Delphi 寫入 AES 加密的 XLSX 檔案:ECMA-376 標準加密規範、密碼處理方式,以及僅支援寫入的解密限制

HotXLS 元件

Delphi 解析器中的 XLSX OPC 關係解析

說明為何寫死 xl/worksheets/sheet1.xml 會讓合法的 XLSX 檔案解析失敗,以及 HotXLS 如何在 Delphi 中依來源部件解析 OPC 關係目標 一個合法的 xlsx 檔案,並不一定要包含 。HotXLS 是 Delphi 與 C++Builder 適用的原生 Excel

HotXLS 元件

Delphi 中 XLSX 共用公式 si 展開:常見陷阱

說明 HotXLS 如何在 Delphi 應用程式中展開 XLSX 共用公式底下的所有從屬儲存格內容:找出 si 主公式的來源位置、位移相對參照的座標,並正確處理自封閉的 f 元素標籤

HotXLS 元件

使用 HotXLS 在 Delphi 中複製 XLSX 工作表

使用 HotXLS 的 Duplicate 與 CopyFrom 方法,在 Delphi 中複製帶有樣式的 XLSX 工作表:哪些內容會深拷貝、哪些仍保持淺拷貝,以及如何在副本上重建圖表

HotXLS 元件

Delphi 中對不受信任 XLSX 檔案的 ZIP EOCD 驗證

說明 HotXLS 如何以四項各自獨立的交叉檢查機制,完整驗證 ZIP 中央目錄結尾記錄內容的正確性,讓刻意藏在 ZIP 註解裡的偽造 EOCD 資料永遠騙不過 Delphi 剖析器

HotXLS 元件

Delphi 中並行 ZIP 解壓縮:HotXLS 讀取閘門

說明 HotXLS 如何在 Delphi 中透過讀取閘門機制設計,從單一共用的 ZIP 套件串流並行解壓縮多個 XLSX 工作表,讓鎖定範圍僅限於 seek 與 read 這對操作動作