首頁/學習資源/Excel VBA 效率提升/Excel 巨集相對位址與絕對位址怎麼選?錄製、測試與常見錯誤完整教學
回到 Excel VBA 效率提升Excel VBA 效率提升

Excel 巨集相對位址與絕對位址怎麼選?錄製、測試與常見錯誤完整教學

錄製 Excel 巨集時,為什麼有時永遠修改 C3,有時會跟著目前儲存格移動?用實作看懂絕對位址、相對位址、測試方法與切換陷阱。

Excel 巨集相對位址與絕對位址怎麼選?錄製、測試與常見錯誤完整教學
給第一次操作的你

新手跟著做:錄製並驗證相對位址巨集

  1. 建立測試用 .xlsm 活頁簿,保留正式資料備份。

  2. 先錄製固定修改 C3 的絕對位址巨集。

  3. 啟用相對位址後,從 A1 錄製移動到 C3 並填色。

  4. 分別從 A1、D1、C3 執行,核對 C3、F3、E5。

  5. 確認結果後關閉相對位址錄製模式。

  6. 進入 VBA 編輯器檢查 Offset 程式碼與實際作用範圍。

重點摘要

- 絕對位址巨集會固定操作指定儲存格,例如每次都修改 C3。 - 相對位址巨集會依目前作用儲存格位移,例如從 A1 往下兩列、往右兩欄到 C3。 - 工作位置固定時用絕對位址;資料列數或起點會改變時,才考慮相對位址。 - 錄製前先選好起點,錄製後再用不同起點測試,才能確認結果符合預期。 - 使用完相對位址錄製後要切回一般模式,避免下一個巨集意外沿用。 最簡單的判斷方式是:要永遠操作同一格,就用絕對位址;要依目前位置做同一組動作,就用相對位址。

Excel 巨集絕對位址與相對位址錄製結果比較操作示意圖
操作示意圖:絕對位址固定修改 C3;相對位址會依起點從 A1 到 C3、從 D1 到 F3。

絕對位址與相對位址差在哪裡?

比較項目絕對位址錄製相對位址錄製
操作依據固定儲存格地址目前作用儲存格的相對距離
從 A1 執行修改 C3修改 C3
從 D1 執行仍修改 C3修改 F3
適合情境固定報表、固定標題、固定輸出位置不同資料列、不同起點、重複格式化
主要風險工作表版面改變後可能操作錯格起點選錯會整體位移

開始前先準備

請使用測試活頁簿,先另存為可啟用巨集的 .xlsm 檔案,並確認功能區能使用「檢視」→「巨集」。正式資料操作前務必保留備份。本文以 Windows 版 Excel 為例;不同版本的按鈕名稱與位置可能略有差異。

如何錄製絕對位址巨集?

① 📍 選取 A1 並開始錄製

先選取 A1,開啟「檢視」→「巨集」→「錄製巨集」。將巨集命名為 AbsoluteColor,把巨集儲存在目前活頁簿。錄製前不要啟用相對位址。

② 🎨 點選 C3 並填滿黃色

錄製期間點選 C3,套用黃色填滿,接著停止錄製。巨集會記住 C3 這個固定地址。

③ ✅ 換起點驗證

清除測試格式,改選 D1 後執行 AbsoluteColor。如果結果仍是 C3 變黃,代表它是絕對位址巨集。

如何錄製相對位址巨集?

① 🔁 啟用相對位址錄製

選取 A1,在「檢視」→「巨集」的下拉選單中啟用「使用相對參照」或「相對位址錄製」。確認按鈕已處於啟用狀態,再開始錄製 RelativeColor。

② ↘️ 從 A1 移動到 C3

從 A1 點到 C3,套用黃色填滿並停止錄製。這次 Excel 記錄的不是 C3 本身,而是「往下兩列、往右兩欄」。

③ 🧪 用三個起點測試

分別從 A1、D1、C3 執行巨集,預期結果應為 C3、F3、E5。每次執行前先清除顏色,避免誤判。

④ ⏹️ 關閉相對位址錄製

完成後再次按下「使用相對參照」,讓它回到未啟用狀態。這個模式可能持續保留;若忘了關閉,下一個巨集也可能被錄成相對位址。

台灣職場案例:每一筆資料旁標示待確認

行政人員每天收到不同長度的名單,要在目前選取資料列右側兩欄填上黃色提醒。若使用絕對位址,巨集永遠只會修改同一格;改用相對位址後,只要先選取該筆資料的起點,就能在對應位置套用相同格式。這類「位置會變、動作不變」的工作特別適合相對位址。

常見錯誤與排除方式

現象常見原因修正方式
每次都修改同一格錄製時未啟用相對位址重新啟用相對參照並錄製
結果整體偏移執行前選錯起點建立明確起點並先選取
下一個巨集也跟著位移相對位址模式未關閉錄製完成後切回一般模式
執行後沒有反應巨集安全性、檔案格式或巨集位置不符確認 .xlsm、信任設定與巨集名稱
正式報表被改壞直接在原檔測試先用副本與少量資料驗證

給 AI 的巨集規劃提示詞

你是一位 Excel VBA 教學助理。我要用錄製巨集完成重複工作。
固定不變的位置:[填寫]
會隨目前儲存格改變的位置:[填寫]
預期動作:[填寫,不要貼真實個資]

請用繁體中文(台灣)協助我:
1. 判斷哪些步驟應使用絕對位址、哪些應使用相對位址;
2. 列出錄製前的起點與每一步操作;
3. 設計 A1、D1、C3 三組測試案例;
4. 說明可能修改錯誤儲存格的風險;
5. 提醒如何備份與復原。
不要假設我已熟悉 VBA。

常見問題

相對位址一定比絕對位址好嗎?

不是。輸出位置固定時,絕對位址反而更清楚;只有當起點或資料列會改變時,相對位址才更有彈性。

一個巨集可以混用兩種位址嗎?

可以。常見做法是先以固定工作表或標題作為絕對位置,再以目前資料列為基準執行相對位移;錄製後應進入 VBA 編輯器檢查程式碼。

錄製巨集會自動處理所有例外嗎?

不會。錄製器只忠實記錄操作,不會自動加入資料檢查、錯誤處理或迴圈。流程穩定後,仍建議整理 VBA 程式碼並補上驗證。

延伸閱讀

參考來源

- Microsoft 支援服務:在相對、絕對與混合參照之間切換 - Microsoft 支援服務:Excel 公式概觀 作者:施文華|企業自動化顧問/講師 更新日期:2026-10-04|內容版本:1.0 適用環境:Excel 2016、Excel 2019、Excel 2021、Microsoft 365 桌面版(Windows;介面可能因版本略有差異)。

施文華|企業自動化顧問/講師

專注 Excel、VBA、Power BI、Power Automate 與企業流程自動化,從真實工作問題出發,協助學員建立可持續使用的能力。