Access 中的資料巨集可讓您新增邏輯至資料表中發生的事件,例如新增、更新或刪除資料。 它們類似於 Microsoft SQL Server 中的「觸發程序」。 本文說明如何建立和偵錯資料巨集。
本文內容
關於資料巨集
在 [資料工作表檢視] 中檢視資料表時,可以從 [資料表 ] 索引標籤管理資料巨集,且不會顯示在 [瀏覽窗格] 的 [巨集] 下。 除此之外,您還可以使用資料巨集來驗證並確保資料表中資料的正確性。 資料巨集主要有兩種類型:由資料表事件觸發的巨集 (也稱為「事件驅動」資料巨集) ,以及回應依名稱呼叫而執行的巨集 (也稱為「命名」資料巨集) 。
建立事件導向的資料巨集
每當您新增、更新或刪除資料表中的資料時,就會發生資料表事件。 您可以將資料巨集設定為緊接在這三個事件之後,或緊接在刪除或變更事件之前執行。 使用下列程序將資料巨集附加至資料表事件:
在 [瀏覽窗格] 中,按兩下您要新增資料巨集的資料表。
在 [表格 ] 索引標籤上,在 [事件之前 ] 群組或 [ 事件之後 ] 群組中,按一下您要新增巨集的事件。 例如,若要建立在您從資料表中刪除記錄之後執行的資料巨集,請按一下 [刪除後]。
注意
如果事件已有與其相關聯的巨集,其圖示會顯示在功能區上。
Access 會開啟巨集建立器。 如果先前曾為此事件建立巨集,Access 會顯示現有的巨集。
新增您要巨集執行的動作。
儲存並關閉巨集。
如需建立巨集的詳細資訊,請參閱 建立使用者介面 (UI) 巨集 一文。
建立具名資料巨集
具名或「獨立」資料巨集與特定資料表相關聯,但與特定事件無關。 您可以從任何其他資料巨集或標準巨集呼叫具名資料巨集。
- 在 [瀏覽窗格] 中,按兩下您要新增資料巨集的資料表。
- 在 [表格 ] 索引標籤上,於 [具名巨集 ] 群組中,按一下 [ 具名巨集],然後按一下 [ 建立具名巨集]。
Access 會開啟巨集建立器,您可以在這裡開始新增巨集指令。
如需建立巨集的詳細資訊,請參閱 建立使用者介面 (UI) 巨集一文。
關於參數
參數可讓您將值傳遞至具名資料巨集,以便在條件陳述式或其他計算中使用它們。 它們也可讓您將物件參照從標準巨集傳遞至資料巨集。
注意
事件驅動程式資料巨集中無法使用參數。
若要將參數新增至資料巨集:
- 在巨集頂端,按一下 [建立參數]。
- 在 [名稱] 方塊中,輸入參數的唯一名稱。 這是您用來參照運算式中參數的名稱。
- 或者,在 [描述 ] 方塊中輸入參數的描述。 我們建議您輸入描述,因為稍後當您使用此參數時,您在這裡輸入的描述文字會顯示在工具提示中。 這有助於您記住參數的用途。
若要從另一個巨集執行具名資料巨集,請使用 RunDataMacro 巨集指令。 此動作會為您建立的每個參數提供方塊,以便您提供必要的值。
管理資料巨集
資料巨集不會出現在 巨集下的 [瀏覽窗格] 中。 您必須使用 [資料表資料工作表檢視] 或 [資料表設計] 檢視中的功能區命令,來建立、編輯、重新命名及刪除資料巨集。
編輯事件導向的資料巨集
在 [瀏覽窗格] 中,按兩下包含您要編輯之資料巨集的資料表。
在 [ 表格 ] 索引標籤上,於 [事件之前 ] 群組或 [ 事件之後 ] 群組中,按一下您要編輯之巨集的事件。 例如,若要編輯從資料表刪除記錄之後執行的資料巨集,請按一下 [ 刪除後]。
注意
如果事件沒有相關聯的巨集,功能表上就不會醒目提示其圖示。
Access 會開啟巨集建立器,您可以開始編輯巨集。
編輯具名資料巨集
- 在 [瀏覽窗格] 中,按兩下任一資料表,並在 [資料工作表檢視] 中開啟。
- 在 [ 表格 ] 索引標籤的 [具名巨集 ] 群組中,按一下 [ 具名巨集],然後指向 [編輯具名巨集]。
- 在子功能表中,按一下您要編輯的資料巨集。
Access 會開啟巨集建立器,您可以開始編輯巨集。
重新命名已命名的資料巨集
- 在 [瀏覽窗格] 中,按兩下任一資料表,並在 [資料工作表檢視] 中開啟。
- 在 [表格 ] 索引標籤的 [具名巨集 ] 群組中,按一下 [ 具名巨集],然後按一下 [重新命名/刪除巨集]。
- 在 [ 資料巨集管理員 ] 對話方塊中,按一下您要重新命名之資料巨集旁邊的 [重新命名 ]。
Access 會選取目前的巨集名稱。 - 輸入新名稱或編輯現有名稱,然後按 ENTER。
刪除資料巨集
使用此程序可刪除任何具名或事件驅動的資料巨集:
- 在 [瀏覽窗格] 中,按兩下任一資料表,並在 [資料工作表檢視] 中開啟。
- 在 [表格 ] 索引標籤的 [具名巨集 ] 群組中,按一下 [ 具名巨集],然後按一下 [重新命名/刪除巨集]。
- 在 [ 資料巨集管理員 ] 對話方塊中,按一下您要重新命名之資料巨集旁邊的 [刪除 ]。
注意
您也可以刪除事件導向巨集,方法是刪除其所有動作。
偵錯資料巨集
一些常見的巨集偵錯工具,例如 [單一步驟] 命令和 MessageBox 巨集動作,不適用於資料巨集。 不過,如果您遇到資料巨集的問題,您可以使用應用程式記錄資料表結合使用 OnError、RaiseError 和 LogEvent 巨集動作,以協助尋找資料巨集錯誤。
顯示應用程式記錄資料表
應用程式記錄資料表是名為 USysApplicationLog) 的系統資料表 (預設不會顯示在 [瀏覽窗格] 中。 如果資料巨集發生錯誤,您可以檢視 [應用程式記錄] 資料表中的資訊來判斷發生了什麼情況。
使用下列程序顯示 [應用程式記錄] 資料表:
按一下 [ 檔案 ] 以開啟 Microsoft Backstage 檢視。
在 [資訊 ] 索引標籤上,按一下 [檢視應用程式記錄資料表]。
注意
如果您沒有看到 [ 檢視應用程式記錄資料表 ] 按鈕,這表示尚未為此資料庫建立應用程式記錄資料表。 記錄事件之後,按鈕會出現在 [資訊 ] 索引標籤上。
您可以使用 LogEvent 巨集指令或 RaiseError 巨集指令,在應用程式記錄資料表中建立資料列,而且可以使用 OnError 巨集指令來控制 Access 對錯誤的回應方式。