建立巨集

重要:  本文係由機器翻譯而成,請參閱免責聲明。本文的英文版本請見這裡,以供參考。

您可以建立巨集執行特定系列的動作],然後您可以建立巨集群組執行相關的一系列的動作。

在 Microsoft Office Access 2007 中,巨集可以包含在巨集物件 (有時也稱為獨立巨集) 中,也可以內嵌於表單、報表或控制項的事件屬性中。內嵌巨集會成為內嵌於其中之物件或控制項的一部分,因此在 [功能窗格] 的 [巨集] 下方,可以看到巨集物件,但是看不到內嵌巨集。

您想要做什麼?

了解巨集建立幫手

建立獨立巨集

建立巨集群組

建立內嵌巨集

編輯巨集

使用條件控制巨集指令

深入了解巨集指令

了解巨集建立幫手

您可以使用 [巨集建立幫手] 建立及修改巨集。若要開啟 [巨集建立幫手]:

  • 按一下 [建立] 索引標籤的 [其他] 群組中的 [巨集。如果無法使用這個命令,請按一下 [模組] 或 [類別模組] 按鈕下方的箭號,然後按一下 [巨集按鈕圖像

    [巨集建立幫手] 隨即顯示。

巨集建立器

您可以在 [巨集建立幫手] 視窗中建立執行巨集時所要執行的巨集指令清單。當第一次開啟 [巨集建立幫手] 時,會顯示 [巨集指令] 資料行、[引數] 資料行及 [註解] 資料行。

如果有需要,可以在 [巨集指令引數] 下方的每個巨集指令左側輸入和編輯引數。右側會顯示一個描述方塊,提供每個巨集指令或引數的簡要描述。按一下巨集指令或巨集指令引數,即可閱讀方塊中的描述。

您可以使用 [巨集建立幫手] 之 [設計] 索引標籤上的命令來建立、測試及執行巨集。

下表說明 [設計] 索引標籤上所提供的命令。

群組

命令

說明

工具

執行

執行巨集中所列的巨集指令。

逐步執行

啟用逐步執行模式。在此模式下執行巨集時,一次只會執行一個巨集指令。每個巨集指令完成後,都會顯示 [巨集逐步執行] 對話方塊。在對話方塊中按一下 [逐步執行] 即可前進至下一個巨集指令。按一下 [停止所有巨集] 則會停止此巨集及其他所有執行中的巨集。按一下 [繼續] 會結束逐步執行模式,並會持續不停地執行剩餘的巨集指令。

建立幫手

輸入可以包含運算式的巨集指令引數時,會啟用此按鈕。按一下 [建立幫手],開啟 [運算式建立幫手] 對話方塊,即可使用該對話方塊來建立運算式。

插入列

在所選的一個或多個資料列上插入一個或多個空白巨集指令列。

刪除列

刪除所選的巨集指令列。

顯示/隱藏

顯示所有巨集指令

在 [巨集指令] 下拉式清單中顯示較多或較少的巨集指令。

  • 若要顯示更長的巨集指令清單,請按一下 [顯示所有巨集指令]。該清單可用時,[顯示所有巨集指令] 按鈕會顯示為已選取的狀態。如果是從這個較長的巨集指令清單中選取巨集指令,您可能先要授與資料庫明確的信任狀態才能執行巨集指令。

  • 若要從長巨集指令清單切換到短清單,只顯示不受信任的資料庫中能夠使用的巨集指令,請確定沒有選取 [顯示所有巨集指令] 按鈕。

    提示: 如果 [顯示所有巨集指令] 按鈕已選取,請按一下 [顯示所有巨集指令] 按鈕清除選取。當 [顯示所有巨集指令] 按鈕沒有選取時,便可以使用較短的受信任巨集指令清單。

巨集名稱

顯示或隱藏 [巨集名稱] 欄。巨集名稱是選擇性的,但是若要區分各個巨集,巨集群組中的巨集都必須要有自己的名稱。如需詳細資訊,請參閱建立巨集群組一節。

條件

顯示或隱藏 [條件] 資料行。您可以利用此資料行輸入運算式來控制執行巨集指令的時間。

引數

顯示或隱藏 [引數] 資料行。此資料行會顯示每個巨集指令的引數,並讓您輕鬆讀取所有巨集。如果 [引數] 資料行沒有顯示,則必須按一下每個巨集指令並讀取 [巨集指令引數] 下的引數。您無法在 [引數] 資料行中輸入引數。

提示: 巨集建立器已經過重新設計,使其更容易建立、 修改和共用 Access 巨集的 Access 2010 中。

頁面頂端​

建立獨立巨集

  1. 按一下 [建立] 索引標籤的 [其他] 群組中的 [巨集。如果無法使用這個命令,請按一下 [模組] 或 [類別模組] 按鈕下方的箭號,然後按一下 [巨集按鈕圖像

    巨集建立幫手隨即顯示。

  2. 在巨集中加入巨集指令:

    • 在 [巨集建立幫手] 中,按一下 [巨集指令] 資料行中的第一個空白儲存格。

    • 輸入要使用的巨集指令,或者按一下箭號,以顯示可用的巨集指令清單,然後選取要使用的巨集指令。

      選取巨集指令

    • 如果有需要,請在 [巨集指令引數] 底下 ([巨集建立幫手] 的下半部中),指定巨集指令的引數。

      輸入巨集指令引數

      附註: 

      • [巨集指令引數] 窗格中輸入引數時,它們會顯示在巨集指令清單的 [引數] 欄中。不過,[引數] 欄僅用於顯示目的,無法在該欄中輸入引數。

      • 如果要查看每個引數的簡要描述,請按一下 [巨集指令引數] 窗格中的引數方塊,然後閱讀相鄰方塊中的描述。

        秘訣

        • 為其設定為資料庫物件名稱巨集指令引數 ,您可以從 [功能窗格的物件拖曳至巨集指令的物件名稱引數方塊,以設定引數。

        • 您也可以將資料庫物件從 [功能窗格] 拖曳至 [巨集建立幫手] 的空白列,藉此建立巨集指令。如果將資料表、查詢、表單、報表或模組拖曳至 [巨集建立幫手],Access 會加入可以開啟資料表、查詢、表單或報表的巨集指令。如果將巨集拖曳至 [巨集建立幫手],Access 會加入執行巨集的巨集指令。

    • (選用) 在 [註解] 欄中輸入巨集指令的註解。

  3. 若要在巨集中加入更多巨集指令,請移至另一個巨集指令列,然後重複步驟 2。

執行巨集時,Access 會依據巨集指令的排列順序來執行。

頁面頂端​

建立巨集群組

如果要將數個相關聯的巨集群組到一個巨集物件中,可以建立巨集群組。

  1. 按一下 [建立] 索引標籤的 [其他] 群組中的 [巨集。如果無法使用這個命令,請按一下 [模組] 或 [類別模組] 按鈕下方的箭號,然後按一下 [巨集按鈕圖像

    [巨集建立幫手] 隨即顯示。

  2. 如果尚未選取,請在 [設計] 索引標籤的 [顯示/隱藏] 群組中按一下巨集名稱 按鈕圖像

    [巨集名稱] 資料行隨即顯示在 [巨集建立幫手] 中。

    附註: 若要區分各個巨集,巨集群組中的巨集都必須要有自己的名稱。巨集名稱與巨集的第一個巨集指令都顯示在同一行中,而巨集中後續巨集指令的巨集名稱欄則會是空白的。當出現下一個巨集名稱時,就表示現在這個巨集已經結束。

  3. 在 [巨集名稱] 資料行中,輸入巨集群組中的第一個巨集名稱。

  4. 加入想讓第一個巨集執行的巨集指令:

    • 在 [巨集指令] 資料行中,按一下箭頭顯示巨集指令清單。

    • 按一下要使用的巨集指令。

    • 如果有需要,可以在 [巨集指令引數] 下指定巨集指令的引數。

      若要查看每個引數的簡要描述,可以在引數方塊中按一下,然後閱讀引數右側的描述。

      秘訣

      • 如果巨集指令引數的設定是資料庫物件名稱,則可以將物件從 [功能窗格] 拖曳至巨集指令的 [物件名稱] 引數方塊,來設定引數。

      • 您也可以將資料庫物件從 [功能窗格] 拖曳至 [巨集建立幫手] 的空白列中,藉此建立巨集指令。如果將資料表、查詢、表單、報表或模組拖曳至 [巨集建立幫手],Access 會加入可以開啟資料表、查詢、表單或報表的巨集指令。如果將巨集拖曳至 [巨集建立幫手],Access 會加入執行巨集的巨集指令。

    • 此外,您可以選擇是否要輸入動作的註解。

  5. 移到下一個空白資料列,然後在 [巨集名稱] 資料行中輸入下一個巨集的名稱。

  6. 加入想讓巨集執行的巨集指令。

  7. 針對巨集群組中的每個巨集重複步驟 5 和 6。

下列圖例顯示小型巨集群組。巨集群組包含兩個巨集,其名稱顯示於 [巨集名稱] 欄。每個巨集各包含兩個巨集指令。

巨集群組範例

附註: 

  • 儲存巨集群組時,所指定的名稱是巨集群組的名稱。在上述範例中,巨集群組的名稱為 Macro3。此名稱顯示在 [功能窗格] 的 [巨集] 底下。若要參考巨集群組中的個別巨集,請使用下列語法:

    macrogroupname.macroname

    例如,在上面的圖例中,Macro3.FoundMsg 表示巨集群組中的第二個巨集。

  • 如果您在 [功能窗格中按兩下,或按一下即可執行 按鈕圖像 在 [設計] 索引標籤上的 [工具] 群組中執行的巨集群組,Access 會執行 [停止達到第二個巨集名稱] 群組中的第一個巨集。

頁面頂端​

建立內嵌巨集

內嵌巨集與獨立巨集的不同之處在於,內嵌巨集儲存在表單、報表或控制項的事件屬性中。它們不會做為物件顯示在 [功能窗格] 的 [巨集] 底下。由於您不必為表單或報表追蹤包含巨集的個別巨集物件,因此資料庫更容易管理。此外,內嵌巨集還會併入您複製、匯入或匯出的表單或報表中。

例如,如果不要顯示沒有資料的報表,可以在報表的 On No Data 事件屬性中內嵌巨集。您可以使用 MsgBox 巨集指令顯示一則訊息,然後使用 CancelEvent 巨集指令取消報表,而不顯示空白頁。

  1. 在 [功能窗格] 中以滑鼠右鍵按一下表單或報表,將包含巨集,然後按一下[設計] 檢視 按鈕圖像 ] 或 [版面配置檢視 按鈕圖像

  2. 如果沒有顯示屬性表,請按下 F4 使其顯示。

  3. 按一下包含要內嵌巨集之事件屬性的控制項或區段。您也可以使用屬性表頂端之 [選取類型] 底下的下拉式清單,來選取控制項或區段 (或者整份表單或報表)。

  4. 按一下屬性表上的 [事件] 索引標籤。

  5. 按一下要內嵌巨集的事件屬性,然後按一下 [建立器] 按鈕

  6. 按一下 [選擇建立幫手] 對話方塊中的 [巨集建立幫手],然後按一下 [確定]。

  7. 在 [巨集建立幫手] 中,按一下 [巨集指令] 資料行的第一列。

  8. 在 [巨集指令] 下拉式清單中,按一下所需的巨集指令。

  9. 在 [巨集指令引數] 下方輸入任何所需的引數。

  10. 若要加入另一個巨集指令,請按一下 [巨集指令] 資料行的下一列,然後重複步驟 8 和 9。

  11. 完成巨集後,按一下 [儲存],然後按一下 [關閉]

每次觸發事件屬性時,巨集都會執行。

附註: Access 可讓您建立巨集群組作為內嵌巨集。不過,只在第一個巨集] 群組中的執行觸發事件時。後續的巨集] 群組中,會忽略。

頁面頂端​

編輯巨集

  • 插入巨集指令列    以滑鼠右鍵按一下要在上方插入新巨集指令列的巨集指令列,然後按一下 [插入列] 在查閱表格插入列按鈕圖像

  • 刪除巨集指令列    以滑鼠右鍵按一下要刪除的巨集指令列,然後按一下 [刪除列] 按鈕圖像

  • 移動巨集指令列    按一下巨集指令左側列的標題選取此巨集指令列,然後將其拖曳至新位置。

您可以插入、刪除或移動多個資料列,方法是先選取資料列群組,然後執行要進行的操作。若要選取資料列群組,請按一下要選取之第一個資料列的列標題,按住 SHIFT 鍵,然後按一下要選取之最後一個資料列的列標題 (列標題是每個巨集指令資料列左邊的灰色方塊)。

選取多個資料列的另一個方法是將指標移到要選取之第一個資料列的列標題上方,然後按一下並向上或向下拖曳,以選取其他資料列。

附註: 透過按一下及拖曳來選取資料列時,要選取的第一個資料列必須尚未選取。如果已經選取該資料列,Access 會認為您要將該資料列拖曳至新位置。

頁面頂端​

使用條件控制巨集指令

您可以在條件中使用任何計算結果為 True/False 或 Yes/No 的運算式。如果運算式的計算結果為 True (或 Yes),則執行巨集指令。

若要輸入巨集指令的條件,首先您必須在 [巨集建立幫手] 中顯示 [條件] 欄。

  • [設計] 索引標籤上,按一下 [顯示/隱藏] 群組中的 [條件] 按鈕圖像

[條件] 欄中輸入運算式。請不要在運算式前面加上等號 (=)。若要讓條件一次套用於數個巨集指令,請在每個後續資料列中輸入 ...。例如:

套用於數個巨集指令的條件

提示: 若要讓 Access 暫時忽略某個巨集指令,請輸入 False 做為條件。暫時忽略某個巨集指令有助於您嘗試找出巨集中的問題。

巨集條件範例

使用此運算式

執行巨集指令的條件

[City]="Paris"

執行巨集的表單上,欄位中的 [City] 值為 Paris。

DCount("[OrderID]", "Orders")>35

[Orders] 資料表的 [OrderID] 欄位中包含了 35 個以上的項目。

DCount("*", "Order Details", "[OrderID]=Forms![Orders]![OrderID]")>3

Order Details 資料表有三個以上的項目,而且該資料表的 OrderID 欄位符合 Orders 表單的 OrderID 欄位。

[ShippedDate] Between #2-Feb-2007# And #2-Mar-2007#

執行巨集的表單上,ShippedDate 欄位的值介於 2007 年 2 月 2 日與 2007 年 3 月 2 日之間。

Forms![Products]![UnitsInStock]<5

[Products] 表單上,[UnitsInStock] 欄位的值小於 5。

IsNull([FirstName])

執行巨集時的表單上的 [名字值為Null (沒有任何值)。這個運算式是相當於[名字] 是Null

[Country]="UK" And Forms![SalesTotals]![TotalOrds]>100

執行巨集的表單上,[Country] 欄位中的值為 [UK],且 [SalesTotals] 表單上 [TotalOrds] 欄位的值大於 100。

[Country] In ("France", "Italy", "Spain") And Len([PostalCode])<>5

執行巨集的表單上,[Country] 欄位的值為 [France]、[Italy] 或 [Spain],且郵遞區號的長度不是 5 個字元。

MsgBox("Confirm changes?",1)=1

[MsgBox] 函數顯示 [Confirm changes?] 的對話方塊中按一下 [確定]。如果按一下對話方塊中的 [取消],則 Access 會忽略此巨集指令。

[TempVars]![MyVar]=43

暫時變數 MyVar 的值 (使用建立SetTempVar巨集指令) 等於 43。

[MacroError]<>0

MacroError物件的數字屬性的值不等於 0,也就是說,在巨集發生錯誤。這種情況可搭配ClearMacroErrorOnError巨集指令控制發生錯誤時,會發生什麼情況。

如需運算式的詳細資訊,請參閱文章建立運算式

頁面頂端​

深入了解巨集指令

在使用 [巨集建立幫手] 時,您只要在巨集指令或引數上按一下,然後閱讀 [巨集建立幫手] 視窗右下角方塊中的描述,便可以了解巨集指令或引數的詳細資訊。此外,每個巨集指令還有相關聯的 [說明] 主題。若要了解巨集指令的詳細資訊,請按一下巨集指令清單中的巨集指令,然後按 F1 鍵。

頁面頂端​

附註: 機器翻譯免責聲明︰本文係以電腦系統翻譯而成,未經人為介入。Microsoft 提供此等機器翻譯旨在協助非英語系使用者輕鬆閱讀 Microsoft 產品、服務及技術相關內容。基於本文乃由機器翻譯而成,因此文中可能出現詞辭、語法、文法上之錯誤。

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×