
- Excel宏教程
- Excel宏 - 首頁
- Excel宏 - 概述
- Excel宏 - 建立
- 單個工作簿中的宏
- Excel宏 - 安全性
- Excel宏 - 絕對引用
- Excel宏 - 相對引用
- Excel宏 - VBA
- Excel宏 - 程式碼理解
- 將宏分配給物件
- Excel宏 - 執行宏
- 使用VBA編輯器建立宏
- Excel宏 - 編輯
- Excel宏 - 使用者窗體
- Excel宏 - 除錯程式碼
- Excel宏 - 配置宏
- Excel宏有用資源
- Excel宏 - 快速指南
- Excel宏 - 有用資源
- Excel宏 - 討論
Excel宏 - 相對引用
相對引用宏記錄了相對於活動單元格的偏移量。如果需要在工作表的不同位置重複這些步驟,此類宏將非常有用。
假設您需要分析從280個選區收集的選民資料。對於每個選區,收集以下詳細資訊:
- 選區名稱。
- 選區總人口。
- 選區選民人數。
- 男性選民人數,以及
- 女性選民人數。
資料以如下所示的工作表形式提供給您。

無法分析上述格式的資料。因此,請按如下所示將資料排列在表格中。

如果您嘗試按上述格式排列給定的資料:
排列來自280個選區的資料需要大量時間
容易出錯
這成為一項枯燥的任務,無法讓您專注於技術方面
解決方法是錄製宏,以便您可以在幾秒鐘內完成任務。宏需要使用相對引用,因為您在排列資料時會向下移動行。
使用相對引用
為了讓宏錄製器知道它必須使用相對引用,請執行以下操作:
單擊功能區上的檢視選項卡。
單擊宏。
單擊使用相對引用。

準備資料格式
排列上述給定資料的第一步是在帶有標題的表格中定義資料格式。
建立如下所示的標題行。

錄製宏
按如下方式錄製宏:
單擊錄製宏。
為宏指定一個有意義的名稱,例如DataArrange。
在單元格B4中鍵入=row()-3。這是因為序號是當前行號減去其上方的3行。
剪下單元格B5、B6、B7、B8和B9,並將其分別貼上到單元格C4到C8中。
現在單擊單元格B5。您的表格如下所示。

第一組資料排列在表格的第一行。刪除行B6-B11,然後單擊單元格B5。

您可以看到活動單元格是B5,下一組資料將放在此處。
停止錄製宏。您的資料排列宏已準備就緒。
執行宏
您需要重複執行宏才能完成如下所示的表格中的資料排列。
活動單元格是B5。執行宏。第二組資料將排列在表格的第二行,活動單元格將變為B6。

再次執行宏。第三組資料將排列在表格的第三行,活動單元格將變為B7。

每次執行宏時,活動單元格都會前進到下一行,從而促進在適當位置重複錄製的步驟。這是因為宏中使用了相對引用。
執行宏,直到所有280個數據集都排列到表格中的280行中。此過程只需幾秒鐘,並且由於步驟是自動化的,因此整個練習都不會出錯。