Access 中的資料巨集讓你能為資料表中發生的事件添加邏輯,例如新增、更新或刪除資料。 它們類似於 Microsoft SQL Server 中的「觸發器」。 本文將教你如何建立和除錯資料巨集。
本文內容
關於資料巨集
資料巨集在資料表檢視中可從 表格 標籤管理,且不會在導航窗格的 巨集 中出現。 你可以使用資料巨集來驗證並確保資料表中資料的準確性。 資料巨集主要有兩種類型——由資料表事件觸發的巨集 (也稱為「事件驅動」資料巨集) ,以及因被命名而執行的巨集 (也稱為「命名」資料巨集) 。
建立事件驅動的資料巨集
每當你在資料表中新增、更新或刪除資料時,資料表事件就會發生。 你可以設定資料巨集,讓它在這三個事件後立即執行,或是在刪除或變更事件發生前立即執行。 請使用以下程序將資料巨集附加到資料表事件上:
在 [瀏覽窗格] 中,按兩下您要新增資料巨集的資料表。
在 表格 分頁,在事件 之前 群組或 事件後 群組,點擊你想加入巨集的事件。 例如,若要建立在您從資料表中刪除記錄之後執行的資料巨集,請按一下 [刪除後]。
注意
如果事件已經綁定了巨集,該圖示會在色帶上被高亮顯示。
Access 會開啟巨集建立器。 如果先前曾為此事件建立巨集,Access 會顯示現有的巨集。
新增您要巨集執行的動作。
儲存並關閉巨集。
如需建立巨集的詳細資訊,請參閱 建立使用者介面 (UI) 巨集 一文。
建立一個命名的資料巨集
命名或「獨立」資料巨集與特定資料表相關聯,但不與特定事件相關聯。 你可以從任何其他資料巨集或標準巨集呼叫命名的資料巨集。
- 在 [瀏覽窗格] 中,按兩下您要新增資料巨集的資料表。
- 在 表格 標籤的命名 巨集 群組中,點選 命名巨集,然後點 選建立命名巨集。
存取後會開啟巨集建構器,開始新增動作。
欲了解更多關於建立巨集的資訊,請參閱文章《 建立使用者介面 (UI) 巨集》。
關於參數
參數讓你能將數值傳入命名的資料巨集,以便用於條件陳述或其他計算。 它們也讓你能將標準巨集的物件參考傳入資料巨集。
注意
事件驅動的資料巨集中沒有參數。
要在資料巨集中加入參數:
- 在巨集頂端,按一下 [建立參數]。
- 在 [名稱] 方塊中,輸入參數的唯一名稱。 這是你用來指稱表達式參數的名稱。
- 可選擇性地在 描述 框中輸入參數的描述。 我們建議您輸入描述,因為當您使用該參數時,輸入的描述文字會顯示在工具提示中。 這有助於你記住參數的目的。
要從另一個巨集執行一個命名的資料巨集,你要使用 RunDataMacro 這個動作。 這個動作會為你建立的每個參數提供一個框,讓你能輸入必要的值。
管理資料巨集
資料巨集不會出現在導航面板的 巨集欄位中。 您必須在表格資料表檢視或表格設計檢視中使用功能區指令來建立、編輯、重新命名及刪除資料巨集。
編輯事件驅動的資料巨集
在導航窗格中,雙擊包含你想編輯的資料巨集的表格。
在 「表格 」分頁,在「 事件之前 」群組或 「事件後 」群組中,點擊你想編輯的巨集事件。 例如,要編輯刪除資料表記錄後執行的資料巨集,請點擊 「刪除後」。
注意
如果事件沒有相關聯的巨集,功能表上就不會醒目提示其圖示。
Access 會開啟巨集建構器,開始編輯巨集。
編輯命名的資料巨集
- 在導航窗格中,雙擊任意表格即可在資料表檢視中開啟。
- 在 表格 分頁的命名巨 集 群組中,點選 命名巨集,然後指向 編輯命名巨集。
- 在子選單中,點擊你想編輯的資料巨集。
Access 會開啟巨集建構器,開始編輯巨集。
重新命名一個命名的資料巨集
- 在導航窗格中,雙擊任意表格即可在資料表檢視中開啟。
- 在 表格 分頁的命名 巨集 群組中,點選 命名巨集,然後點 選重命名/刪除巨集。
- 在 資料巨集管理員 的對話框中,點選你想重新命名的資料巨集旁邊的「 重新命名 」。
Access 選擇目前的巨集名稱。 - 輸入新名稱或編輯現有名稱,然後按下 ENTER。
刪除資料巨集
使用此程序刪除任何命名或事件驅動的資料巨集:
- 在導航窗格中,雙擊任意表格即可在資料表檢視中開啟。
- 在 表格 分頁的命名 巨集 群組中,點選 命名巨集,然後點 選重命名/刪除巨集。
- 在 資料巨集管理器 的對話框中,點擊你想重新命名的資料巨集旁邊的 刪除 。
注意
你也可以刪除事件驅動的巨集,刪除它所有的動作。
除錯資料巨集
一些常見的巨集除錯工具,如單步指令和訊息盒(MessageBox)的巨集動作,並不適用於資料巨集。 不過,如果你遇到資料巨集的問題,可以結合應用程式日誌表與 OnError、RaiseError 和 LogEvent 巨集動作,幫助找出資料巨集錯誤。
顯示應用程式日誌表
應用程式日誌資料表是一個系統資料表, (名為 USysApplicationLog) 預設不會顯示在導航窗格中。 如果資料巨集發生錯誤,你或許可以透過查看應用程式日誌資料表中的資訊來判斷發生了什麼。
請使用以下程序顯示應用程式日誌表:
點擊 檔案 以開啟 Microsoft Backstage 視圖。
在 資訊 標籤中,點擊 「查看申請日誌表」。
注意
如果您未看到 「檢視應用程式日誌表 」按鈕,表示該資料庫尚未建立應用程式日誌表。 一旦事件被記錄,按鈕會出現在 資訊 標籤上。
你可以透過 LogEvent 動作或 RaiseError 動作在 Application Log 資料表中建立資料列,並透過 OnError 動作控制 Access 對錯誤的反應。