工程細節 · 診斷
帳本盤中會頓,
但主因不是你以為的那個。
v17 實測,全檔 69,924 格公式,約 70% 掛在完全沒有資料的預留列上。直覺是「砍掉空轉公式」,但那是錯的方向。
實測數據
| 頁籤 | 檔內大小 | 公式格 | 有資料到 | 公式鋪到 | 空轉 |
|---|---|---|---|---|---|
| 1_TradeLog | 4.50 MB | 40,473 | 135 | 1500 | 91% |
| 5_ClientView | 1.54 MB | 13,953 | 62 | 605 | 76% |
| 3_Dashboard | 1.07 MB | 8,470 | 50 | 602 | 75% |
| 4_Clients | 0.65 MB | 3,524 | 60 | 503 | 69% |
| CM日期鍵 | 0.56 MB | 3,504 | 10 | 510 | 71% |
真正的主因:相依鏈的廣度
那些空轉公式外層都有 IF(C="","") 守門,Excel 的 IF 會短路,日常打字時根本沒在算。
| 來源頁 | 引用 1_TradeLog | 引用 XQ-DDE |
|---|---|---|
| 5_ClientView | 16,260 | 0 |
| 3_Dashboard | 12,000 | 0 |
| 4_Clients | 1,716 | 0 |
| 盤中即時 | 158 | 48 |
| 2_Portfolio | 156 | 0 |
在 1_TradeLog 輸入一格 → 下游 25,947 格全部重算,因為下游參照一律寫成 $2:$1500 整段範圍,Excel 無法只算新增那一列。
反觀 DDE 報價跳動 → 只重算「盤中即時」133 格就停,因為沒有任何頁面依賴它。所以問題不在 DDE,在帳本的下游太廣。
被否決的方案
| 方案 | 否決理由 |
|---|---|
| 砍掉沒資料的預留列(可省 48,974 格) | 守門會短路,省不到速度;且 3 個月累積 135 筆,1500 列只夠三年 |
| 同一檔+計算選項改手動 | 效果同等但要記得按 F9;計算模式是應用程式層級,會影響同時開的其他活頁簿 |
| 同一檔+新增 TradeLog 快照頁 | 需改動 29,976 處公式參照,風險高於分檔 |
| 正本 1_TradeLog 整頁貼成值 | 會拆掉計算引擎——27 個公式欄裡有批次建倉價、庫存、批次建倉日、批次結束日、批次出場價 |
| 改用 Google Sheets | 無 DDE;大量 XLOOKUP 效能更差 |
最後的答案:切檔
| 檔案 | 頁籤 | 大小 | 用途 |
|---|---|---|---|
| 00.台市豐格-庫存股 | 全 13 頁 | 1.34 MB | 盤後唯一真相:貼訊號、更新 CM、看 Dashboard 與客戶績效 |
| 01.台市豐格-盤中lite | 7 頁 | 576 KB | 過渡版本,保留備查 |
| 03.盤中QX-DDE看盤 | 4 頁 | 94 KB | 盤中看盤專用,不含帳本任何內容 |
切出 03 的理由是實際用下來發現:盤中看盤這件事不需要帳本的任何東西。它只需要 DDE 報價和族群 K 棒牆。