Excel宏 - 配置宏



您可以錄製一個宏並將其儲存為名為Auto_Open的檔案,以便在每次開啟包含此宏的工作簿時執行它。

您也可以編寫VBA程式碼來實現相同目的,方法是使用工作簿的Open事件。每次開啟工作簿時,Open事件都會在子過程Workbook_Open()中執行程式碼。

錄製Auto_Open宏

您可以按照以下步驟錄製Auto_Run宏:

  • 單擊功能區上的“檢視”選項卡。
  • 單擊“宏”。
  • 單擊“錄製宏”。將出現“錄製宏”對話方塊。
  • 為宏輸入名稱“Auto_Run”。
  • 輸入描述並單擊“確定”。
Auto_open
  • 開始錄製宏。
  • 停止錄製。
  • 將工作簿另存為啟用宏的工作簿。
  • 關閉工作簿。
  • 開啟工作簿。宏Auto_Run將自動執行。

如果您希望Excel在不執行Auto_Open宏的情況下啟動,請在啟動Excel時按住SHIFT鍵。

Auto_Open宏的限制

以下是Auto_Open宏的限制:

  • 如果您在其中儲存了Auto_Open宏的工作簿包含工作簿Open事件的程式碼,則Open事件的程式碼將覆蓋Auto_Open宏中的操作。

  • 當透過使用Open方法的程式碼開啟工作簿時,將忽略Auto_Open宏。

  • Auto_Open宏在任何其他工作簿開啟之前執行。因此,如果您錄製了希望Excel在預設Book1工作簿或從XLStart資料夾載入的工作簿上執行的操作,則當您重新啟動Excel時,Auto_Open宏將失敗,因為宏在預設工作簿和啟動工作簿開啟之前執行。

如果您遇到任何這些限制,則應編寫Open事件的程式碼(如下一節所述),而不是錄製Auto_Open宏。

工作簿Open事件的VBA程式碼

您可以編寫在開啟工作簿時執行的程式碼。VBA提供了一個名為open的事件,該事件包含一個VBA過程,用於在開啟工作簿時執行的操作。

開啟您儲存為絕對引用而編寫的宏的工作簿 - Report_ProjectXYZ。當執行此宏時,將在工作簿中新增一個新的工作表,並且專案報告結構將顯示在新工作表上。

您可以編寫一個宏程式碼,以便在開啟工作簿時執行這些操作。這意味著當您開啟“專案報告”工作簿時,一個包含報告結構的新工作表將準備就緒,以便您輸入詳細資訊。

在VBA編輯器中按照以下步驟操作:

  • 雙擊“專案資源管理器”中的“ThisWorkbook”。

  • 在程式碼視窗中,在左側下拉列表中選擇“Workbook”,在右側下拉列表中選擇“Open”。將顯示Sub Workbook_Open()。

Workbook_open
  • 單擊“專案資源管理器”中的“模組”。

  • 雙擊包含宏程式碼的模組名稱。

  • 從模組中複製宏程式碼並將其貼上到Sub WorkBook_Open()中。

Sub Workbook_open

儲存啟用宏的工作簿。再次開啟它。宏將執行,並插入一個包含報告結構的新工作表。

廣告