Applies ToMicrosoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

本文說明 Access 資料庫中的宏,以及宏如何自動化您經常執行的工作來節省時間。 它探索建立和使用宏背後的基礎,同時也探討 Access中宏的改良功能。

什麼是巨集?

Access 中的宏是一項可讓您自動化工作,並將功能新增至窗體、報表和控件的工具。 例如,如果您新增一個表單的命令按鈕,就是在建立按鈕的 OnClick 事件與巨集關聯,而該巨集內會包含每您要按鈕在每次按一下時執行的命令。

在 Access中,建立要執行的動作清單,將宏視為您撰寫的簡化程式設計語言是很有説明的。 建立巨集時,您會選取下拉式清單中的各個動作,然後為每個動作填入所需的資訊。 宏可讓您在表單、報表和控件中新增功能,而不需要在 Visual Basic for Applications (VBA) 模組中撰寫程序代碼。 巨集提供可在 VBA 中取得的命令之子集合,大部分人都會覺得建立巨集比撰寫 VBA 程式碼簡單多了。

比方說,假設您要直接從其中一份資料輸入表單開始報表。 您可以在您的表單中新增按鈕,然後建立開啟該表單的巨集。 巨集可以是獨立的巨集 (資料庫中的一個個別物件),它會連結至按鈕的 OnClick 事件,或可直接將巨集嵌入到按鈕本身的 OnClick 事件。 無論哪一種方式,當您按一下按鈕時,巨集會執行並開啟報表。 這類巨集通常稱為使用者介面巨集。

資料巨集可讓您將工作自動化,以及將功能直接新增至資料表。 資料巨集和它們的動作會附加至特定的表格事件,例如,當您將記錄新增至資料表時。

您可以使用巨集建立器​​來建立巨集,下圖為一個範例。

使用 IntelliSense 輸入運算式

若要對使用者介面巨集顯示巨集建立器:

  • 在 [建立] 索引標籤上,按一下 [巨集與程式碼] 群組中的 [巨集]。

若要顯示資料巨集的巨集建立器:

  • 在資料工作表檢視中開啟任何資料表。 在 [資料表] 索引標籤上的 [前置事件​​] 和 [後置事件​​] 群組中,按一下其中一個事件命令,例如 [變更前] 或 [插入後]。

若要進一步瞭解巨集建立器,以及如何建立與測試使用者介面和資料巨集,請參閱本文底端請參閱小節中的相關文件。

Access中的宏功能

在舊版的 Access中,許多常用函數都無法在沒有撰寫 VBA 程式代碼的情況下執行。 在目前版本的 Access中,我們新增了新功能和宏指令,有助於消除程序代碼的需求。 這可讓您更輕鬆地將功能新增至您的資料庫,並讓資料更安全。

  • 內嵌巨集    您可以在表單、報表或控制項提供的任何事件內嵌巨集。 內嵌的巨集不會在功能窗格​​中顯示,它會成為建立巨集所在的表單、報表或控制項的一部分。 如果您建立包含內嵌巨集之表單、報表或控制項的複本,巨集也會出現在複本中。

  • 增加安全性    當巨集建立器中未將 [顯示所有動作] 按鈕醒目提示時,可供使用的唯一巨集動作和 RunCommand 引數為不需要信任狀態即可執行的巨集。 當資料庫處於停用模式 (無法執行 VBA 的情況) 時,使用這些動作建置的巨集仍會執行。 包含的巨集動作不在受信任清單上的資料庫,或是具有 VBA 程式碼的資料庫,必須明確地獲授與信任狀態。

  • 錯誤處理和偵錯    Access 提供宏指令,包括 OnError (類似 VBA) 和 ClearMacroError 中的「發生錯誤」語句,可讓您在執行宏時執行特定動作。 此外,SingleStep 巨集動作可讓您在巨集中的任何點進入逐步執行模式,這樣您就可以一次觀察一個巨集動作的運作情況。

  • 暫存變數    有三個巨集動作 (SetTempVarRemoveTempVarRemoveAllTempVars) 可讓您在巨集中建立和使用暫存變數。 您可以在條件運算式中使用這些動作來控制執行中的巨集,或在報表或表單之間往返傳送資料,或針對需要暫時存放值位置的任何其他用途。 這些暫存變數也可以在 VBA 中存取,因此您也可以使用這些變數在 VBA 模組之間往返通訊資料。

深入了解巨集動作

在巨集建立器中作業時,您可以按一下動作或引數來深入了解它,然後閱讀 [巨集建立器] 視窗右下角的描述。 此外,每個巨集動作會有與其相關聯的說明文章。 若要深入了解某個動作,請在 [動作] 清單中按一下該動作,然後按下 F1。

頁面頂端

另請參閱

建立使用者介面 (UI) 巨集

建立數據宏

建立在資料庫開啟時執行的巨集

逐步執行巨集進行修正

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。