第6章-宏電子課件_第1頁
第6章-宏電子課件_第2頁
第6章-宏電子課件_第3頁
第6章-宏電子課件_第4頁
第6章-宏電子課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第6章

宏主編:潘惠勇夏敏捷數(shù)據(jù)庫技術及應用(Access2016)1教學目標 了解宏的基本概念。 熟悉常用的宏操作及宏的運行、調(diào)試。 掌握宏的創(chuàng)建、編輯和運行。第6章宏2第6章宏6.1宏概述6.2宏的創(chuàng)建6.3宏的運行6.4宏的調(diào)試第6章宏36.1宏概述6.1.1宏的基本概念6.1.2常用宏操作第6章宏4宏概述宏是Access數(shù)據(jù)庫的對象之一,它的主要功能就是進行自動操作,將查詢、窗體等有機的結(jié)合起來,形成性能完善、操作簡單的系統(tǒng)。通過宏我們還可以了解計算機的編程語言,對理解計算機的操作本質(zhì)和后續(xù)VBA編程都非常有幫助。宏是一種工具,可以用它來自動完成任務,并向窗體、報表和控件中添加功能。例如,如果向窗體添加一個命令按鈕,應當將按鈕的OnClick事件與一個宏關聯(lián),并且該宏應當包含該按鈕每次被單擊時執(zhí)行的命令。第6章宏5宏的基本概念宏是一個或多個操作組成的集合,其中的每個操作能夠自動地實現(xiàn)特定的功能。在Access中,用戶可以為宏定義各種類型的操作,如打開和關閉窗體、顯示及隱藏工具欄、預覽或打印報表等。通過直接執(zhí)行宏或者使用包含宏的用戶界面,可以完成很多復雜的操作,而不需要編寫任何的程序代碼。第6章宏6宏的分類在Access中,宏可以分為標準宏、事件宏和數(shù)據(jù)宏。標準宏按宏中宏操作的多少和組織方式,可分為宏、宏組和條件操作宏。事件宏是嵌入到窗體、報表或控件的任何事件屬性中,成為所嵌入到的對象或控件的一部分。數(shù)據(jù)宏是直接附加到Access表而不是各個字段的,允許設計者在表事件(如更改前、刪除前、插入后、更新后或刪除后等)中自動運行。標準宏顯示在導航窗格中的“宏”下,事件宏和數(shù)據(jù)宏則不顯示。第6章宏7宏實例一個包含有“打開窗體”、“打開報表”、“關閉窗體”和“關閉報表”4個基本宏操作的宏。第6章宏8常用宏操作第6章宏9操作說明Beep通過計算機的揚聲器發(fā)出嘟嘟聲。CloseWindow關閉指定的MicrosoftAccess窗口。如果沒有指定窗口,則關閉活動窗口。GoToControl把焦點移到打開的窗體、窗體數(shù)據(jù)表、表數(shù)據(jù)表、查詢數(shù)據(jù)表中當前記錄的特定字段或控件上。MaximizeWindow放大活動窗口,使其充滿MicrosoftAccess窗口。該操作可以使用戶盡可能多地看到活動窗口中的對象。MinimizeWindow將活動窗口縮小為MicrosoftAccess窗口底部的小標題欄。MessageBox顯示包含警告信息或其它信息的消息框。OpenForm打開指定窗體,并通過選擇窗體的數(shù)據(jù)輸入與窗口方式,來限制窗體所顯示的記錄。OpenReport在“設計”視圖或打印預覽中打開報表或立即打印報表。也可以限制需要在報表中打印的記錄。FindRecord可以在活動數(shù)據(jù)表、窗體等對象查找符合參數(shù)條件的第一個數(shù)據(jù)實例。QuitAccess退出MicrosoftAccess2016。QuitAccess操作還可以指定在退出Access之前是否保存數(shù)據(jù)庫對象。CancelEvent可以取消一個事件。GotoPage可以將活動窗體中的焦點移至指定頁中的第一個控件。RunMacro運行宏或宏組。該宏可以在宏組中。AddMenu可以創(chuàng)建自定義菜單或自定義右鍵快捷菜單。OnError指定當宏出現(xiàn)錯誤時如何處理。StopMacro停止當前正在運行的宏。If按照設定的條件執(zhí)行宏操作,屬于程序流程控制操作。設置宏操作參數(shù)關于設置操作參數(shù)的一些說明如下。(1)可以在參數(shù)框中鍵入數(shù)值,或者在很多情況下,也可以從列表中選擇某個操作。(2)通常按參數(shù)排列順序來設置操作參數(shù)是很好的方法,因為選擇某一參數(shù)將決定該參數(shù)后面的參數(shù)的選擇。(3)如果通過從“數(shù)據(jù)庫”窗口拖曳數(shù)據(jù)庫對象的方式來向宏中添加操作,系統(tǒng)將自動為這個操作設置適當?shù)膮?shù)。(4)如果操作中有調(diào)用數(shù)據(jù)庫對象名的參數(shù),則可以將對象從“數(shù)據(jù)庫”窗口中拖曳到參數(shù)框,從而由系統(tǒng)自動設置參數(shù)及其對應的對象類型參數(shù)。(5)需要重復設置宏操作時,可以使用復制的方式。(6)移動宏操作時,可以使用拖動的方式。6.2宏的創(chuàng)建6.2.1創(chuàng)建標準宏6.2.2創(chuàng)建事件宏6.2.3創(chuàng)建數(shù)據(jù)宏6.2.4宏的編輯第6章宏11宏的創(chuàng)建宏的創(chuàng)建方法與其他Access數(shù)據(jù)庫對象一樣,都可以在設計視圖中進行,在Access中宏的設計視圖又稱宏生成器。創(chuàng)建一個宏的主要工作包括:設置宏所包含的操作和相應的參數(shù)。打開宏生成器的方法是先打開數(shù)據(jù)庫,單擊“創(chuàng)建”選項卡下“宏與代碼”組中的“宏”,即可打開宏生成器,如圖6.2所示。打開宏生成器的同時,也會打開“操作目錄”面板。第6章宏12第6章宏13創(chuàng)建標準宏-宏【例6.1】在“學籍管理”數(shù)據(jù)庫中創(chuàng)建一個宏,其操作功能為打開學生信息窗體。操作步驟如下:(1)打開“學籍管理”數(shù)據(jù)庫,單擊“創(chuàng)建”選項卡下“宏與代碼”組中的“宏”,打開宏生成器。(2)在宏生成器的“添加新操作”下拉列表框中單擊下拉按鈕,選擇“OpenForm”操作,如圖6.3所示,即可打開該宏的“操作參數(shù)列表”區(qū),參考圖6.4。

第6章宏14(3)在打開的“操作參數(shù)列”的“窗體名稱”下拉列表中選擇“學生”窗體,在“數(shù)據(jù)模式”的下拉列表中選擇“只讀”,其他設置如圖6.4所示。(4)單擊快速訪問工具欄上的“保存”按鈕,在“另存為”對話框中輸入“學生”,單擊“確定”按鈕,即可將宏保存。第6章宏15創(chuàng)建標準宏-宏【例6.2】在“學籍管理”數(shù)據(jù)庫中創(chuàng)建一個宏,該宏包括打開學生信息窗體、顯示成功操作的消息框和把窗體最大化。操作步驟如下:(1)打開“學籍管理”數(shù)據(jù)庫,單擊“創(chuàng)建”選項卡下“宏與代碼”組中的“宏”,打開宏生成器。(2)在宏生成器的“添加新操作”下拉列表框中單擊下拉按鈕,選擇“OpenForm”操作,在打開的“操作參數(shù)列”區(qū)的“窗體名稱”下拉列表中選擇“學生”窗體,在“數(shù)據(jù)模式”的下拉列表中選擇“只讀”。(3)在宏生成器的“添加新操作”下拉列表框中單擊下拉按鈕,選擇“MessageBox”操作,在打開的“操作參數(shù)列”的“消息”欄輸入“窗體打開成功!”,“標題”欄輸入“打開窗體”。(4)在宏生成器的“添加新操作”下拉列表框中單擊下拉按鈕,選擇“MaximizeWindow”操作,如圖6.5所示。(5)單擊快速訪問工具欄上的“保存”按鈕,在“另存為”對話框中輸入“學生信息”,單擊“確定”按鈕,將宏保存。第6章宏16第6章宏17創(chuàng)建標準宏-宏組宏組是指一個宏文件中包含一個或多個宏,這些宏稱為子宏。在宏組中每一個子宏都是獨立的,互不相關,必須定義一個唯一的名稱,方便調(diào)用。保存宏組時,指定的名字是宏組的名字。這個名字也是顯示在“數(shù)據(jù)庫”窗口中的宏和宏組列表的名字。如果要引用宏組中的子宏,請用下面的格式“宏組名.子宏名”引用。第6章宏18創(chuàng)建標準宏-宏組【例6.3】在“學籍管理”數(shù)據(jù)庫中創(chuàng)建一個宏組并將其命名為“宏組操作”,其中包括3個子宏,分別是打開學生信息窗體、打開課程信息窗體和關閉窗體。其中第一個子宏包括打開“學生信息窗體”和顯示“成功打開學生信息窗體!”消息框兩個操作,第二個子宏包括打開“課程信息窗體”和顯示“成功打開課程信息窗體!”消息框兩個操作,最后一個子宏執(zhí)行關閉窗體操作。操作步驟如下:(1)打開“學籍管理”數(shù)據(jù)庫,單擊“創(chuàng)建”選項卡下“宏與代碼”組中的“宏”,打開宏生成器。(2)創(chuàng)建第一個子宏。在“操作目錄”面板,將程序流程中的子宏命令SubMacro拖到“添加新操作”框中,在子宏名稱文本框中,默認名稱為Sub1,將該名稱改為“打開學生信息窗體”。在“添加新操作”下拉列表框中單擊下拉按鈕,選擇“OpenForm”操作,在打開的“操作參數(shù)列”區(qū)的“窗體名稱”下拉列表框中選擇“學生”窗體,在“數(shù)據(jù)模式”的下拉列表框中選擇“只讀”;再在“添加新操作”下拉列表框中選擇“MessageBox”,在下面“操作參數(shù)列”的“消息”欄輸入“成功打開學生信息窗體!”,“標題”欄輸入“打開窗體”,如圖6.6所示。(3)創(chuàng)建宏組中的其他子宏。按照上述方法,在設計窗口中創(chuàng)建打開課程信息窗體及顯示消息和關閉窗體的兩個宏,如圖6.7所示。(4)保存宏組。單擊快速訪問工具欄上的“保存”按鈕,在“另存為”對話框中輸入“宏組操作”,單擊“確定”按鈕。第6章宏19第6章宏20創(chuàng)建標準宏-條件宏創(chuàng)建條件宏的方法與創(chuàng)建宏組一樣,是通過宏生成器窗口來完成的,它們的區(qū)別是在宏生成器中使用程序流程控制的宏命令If操作。If操作相當于早期版本的Access中使用的“條件”列,其添加方法是可以從“添加新操作”下拉列表框中選擇“If”,或者是將“If”從“操作目錄”窗格拖動到宏設計器。If操作是以If塊的形式顯示在宏設計器的,如果有多個執(zhí)行條件時,還可以使用“ElseIf”和“Else”塊來擴展“If”塊,其添加方法是單擊“If”塊右下角的“添加Else”和“添加ElseIf”。不管是“If”還是“ElseIf”,都需要一個執(zhí)行該塊的條件表達式,該條件表達式必須為布爾表達式,也就是說這個表達式的計算結(jié)果必須為True或False?!癐f”塊最多可以嵌套10級。第6章宏21【例6.4】創(chuàng)建一個宏,用戶只有在確認的情況下才能打開學生信息窗體,并要求有提示的聲音。操作步驟如下:(1)打開“學籍管理”數(shù)據(jù)庫,單擊“創(chuàng)建”選項卡下“宏與代碼”組中的“宏”,打開宏生成器。(2)創(chuàng)建宏條件。在“操作目錄”窗格,將程序流程中的子宏命令if拖到“添加新操作”框中,在if欄文本框中輸入“MsgBox("確認打開“學生基本信息窗體”窗體嗎?",1)=1”。(3)創(chuàng)建宏操作。在“添加新操作”框單擊下拉按鈕,選擇“Beep”操作;再在“添加新操作”框單擊下拉按鈕,選擇“OpenForm”操作,在下面“操作參數(shù)列”的“窗體名稱”下拉列表中選擇“學生”窗體,在“數(shù)據(jù)模式”的下拉列表中選擇“只讀”,如圖6.8所示。(4)保存宏。單擊工具欄上的“保存”按鈕,在“另存為”對話框中輸入“條件宏”,單擊“確定”按鈕。(5)運行此宏時,系統(tǒng)會在執(zhí)行Beep和OpenForm操作前先執(zhí)行MsgBox()函數(shù),然后判斷用戶的選擇,如果單擊的是第一個“確定”按鈕,那么就執(zhí)行Beep和OpenForm操作,否則不執(zhí)行該操作。第6章宏22創(chuàng)建事件宏事件宏與標準宏的不同之處在于,事件宏存儲在窗體、報表或控件的事件屬性中,是所嵌入對象的一部分。它們并不作為對象顯示在導航窗格中的“宏”下面。這使得數(shù)據(jù)庫易于管理,因為不必跟蹤包含窗體或報表的宏的單獨宏對象。通常,事件宏的執(zhí)行與窗體中的單擊事件相結(jié)合,當單擊命令按鈕時執(zhí)行相應的宏操作。第6章宏23事件的概念事件(Event)是在數(shù)據(jù)庫中執(zhí)行的某種特殊操作,是對象所能辨識和檢測的動作。當此動作發(fā)生在某一個對象上時,其對應的事件便會被觸發(fā),如果已預先為此事件編寫了宏或事件程序,此時就會執(zhí)行宏或事件程序。例如,單擊了窗體上的某個按鈕,此按鈕的Click事件便會被觸發(fā),指派給該Click事件的宏或事件程序便會被執(zhí)行。Access2016中的事件可以分為如下11類。?窗口事件:窗體及報表事件,打開、關閉及調(diào)整大小。?數(shù)據(jù)事件:刪除、更新或者成為當前項。?焦點事件:激活、輸入或者退出。?鍵盤事件:按下或者釋放一個鍵,以及按下和釋放合在一起的擊鍵事件。?鼠標事件:包括單擊、雙擊、鼠標按下、鼠標釋放和鼠標移動。?打印事件:包括打開、關閉報表,報表無數(shù)據(jù),打印頁前,打印出錯等。?篩選事件:應用或刪除篩選器時由窗體觸發(fā)。?錯誤事件:錯誤發(fā)生時由獲得焦點的窗體或報表觸發(fā)。?時間事件:渡過指定時間間隔后由窗體觸發(fā)。?類模塊事件:打開或關閉一個VBA類實例時觸發(fā)。?引用事件:添加或刪除一個對象或References集合中類型庫的引用時觸發(fā)。事件是預先定義好的活動,也就是說一個對象擁有哪些事件是系統(tǒng)本身定義好的,至于事件被觸發(fā)后執(zhí)行什么內(nèi)容,是由用戶為此事件編寫的宏或事件程序決定的。事件過程是為響應由用戶或程序代碼引發(fā)的事件或系統(tǒng)觸發(fā)的事件而運行的過程。宏運行的前提是有觸發(fā)宏的事件發(fā)生。第6章宏24命令按鈕上的事件宏在對象的事件屬性中,可以使用事件宏,事件宏成為創(chuàng)建它的窗體、報表或控件的一部分。最常見的是與命令按鈕的OnClick事件相關的事件宏。【例6.5】創(chuàng)建一個窗體,在窗體上添加3個命令按鈕,其功能分別是打開學生表、打開學生信息維護窗體和退出。操作步驟如下:第6章宏25用戶界面宏在Access2016中,附加到用戶界面(UI)對象(例如命令按鈕、文本框、窗體和報表)的宏稱為用戶界面宏。此名稱可將它們與附加到表的數(shù)據(jù)宏區(qū)分開來。使用用戶界面宏可以自動完成一系列操作,例如打開另一個對象、應用篩選器、啟動導出操作以及許多其他任務?!纠?.6】創(chuàng)建一個“課程”窗體,在窗體上單擊“課程號”字段時,會打開一個詳細的課程信息窗體。操作步驟如下:第6章宏26創(chuàng)建數(shù)據(jù)宏除了標準宏外,還可以使用宏生成器來創(chuàng)建數(shù)據(jù)宏。數(shù)據(jù)宏是Access2010之后版本中新增的一項新功能,它是根據(jù)事件更改數(shù)據(jù)。數(shù)據(jù)宏有助于支持Web數(shù)據(jù)庫中的聚合,并且還提供了一種在任何Access2016數(shù)據(jù)庫中實現(xiàn)“觸發(fā)器”的方法,允許設計者在表事件(如添加、更新或刪除數(shù)據(jù)等)中添加邏輯。在Access中,創(chuàng)建數(shù)據(jù)宏的位置和創(chuàng)建標準宏、事件宏都不相同,是在表對象的數(shù)據(jù)表視圖和設計視圖中創(chuàng)建的。數(shù)據(jù)宏有事件驅(qū)動的數(shù)據(jù)宏和已命名的數(shù)據(jù)宏兩種形式。第6章宏27創(chuàng)建數(shù)據(jù)宏例如有一個“已完成百分比”字段和一個“狀態(tài)”字段的表。可以使用數(shù)據(jù)宏進行如下設置:當“狀態(tài)”設置為“已完成”時,將“已完成百分比”設置為100%;當“狀態(tài)”設置為“未開始”時,將“已完成百分比”設置為0%??梢岳迷O置表的更新后事件的數(shù)據(jù)宏來實現(xiàn)?!纠?.7】在成績表中,有“成績”字段,當修改或輸入新的值時,要對成績的值進行檢查,如果不符合要求,則不允許更新。假設成績的取值是0到100。操作步驟如下:第6章宏28宏的編輯宏的修改用戶對宏進行修改時,可以在“宏生成器”的任意位置添加或更改一個操作,還可以調(diào)整操作的順序。向宏添加操作可以通過“添加新操作”欄和“操作目錄”欄完成,如圖6.28所示。調(diào)整宏的操作順序或刪除宏可以通過快捷菜單和命令按鈕的方式完成,如圖6.29所示。第6章宏29宏的編輯宏的刪除在完成宏的設計以后,如果不需要了,還可以把設計好的宏刪除,標準宏、事件宏和數(shù)據(jù)宏的刪除有一些差別。對于標準宏,用戶可以在導航窗格中選中需要刪除的宏,單擊右鍵選擇“刪除”命令即可完成,如圖6.30所示。對于事件宏,可以在“屬性表”中刪除。與命令按鈕等用戶界面相關的事件宏,根據(jù)對象打開其“屬性表”,在“事件”選項卡中對應事件后的編輯框中刪除“[嵌入的宏]”即可完成刪除宏的操作,如圖6.31所示。對于數(shù)據(jù)宏,可以在“數(shù)據(jù)宏管理器”中刪除。與數(shù)據(jù)相關的數(shù)據(jù)宏,用戶可以在“數(shù)據(jù)宏管理器”中,點擊對應事件數(shù)據(jù)宏后的“刪除”命令即可完成刪除宏的操作,如圖6.32所示。打開“數(shù)據(jù)宏管理器”的方法是,首先打開數(shù)據(jù)表,選擇“表格工具”選項組中“已命名的宏”下的“重命名/刪除宏”命令,如圖6.33所示。第6章宏306.3宏的運行6.3.1標準宏的運行6.3.2事件宏的運行6.3.3數(shù)據(jù)宏的運行第6章宏31標準宏的運行1.直接運行宏通過下列操作方法之一可以直接運行宏。(1)在宏設計窗口中運行宏,單擊工具欄上的“運行”按鈕。(2)在導航窗格中運行宏,單擊“宏”,然后雙擊相應的宏名。(3)在主窗口中運行宏,選擇“數(shù)據(jù)庫工具”選項卡中的“宏”組,單擊“運行宏”按鈕,在打開的“執(zhí)行宏”對話框中選擇執(zhí)行。第6章宏32獨立宏的運行2.運行宏組中的宏通過下列操作方法之一可以直接運行宏組中的宏。(1)將宏指定為窗體或報表的事件屬性設置,或指定為RunMacro操作的宏名參數(shù)。引用方法為:宏組名.宏名。(2)在主窗口中運行宏,選擇“數(shù)據(jù)庫工具”選項卡中的“宏”組,單擊“運行宏”按鈕,在打開的“執(zhí)行宏”對話框中選擇執(zhí)行。第6章宏33獨立宏的運行3.從另一個宏中或VBA模塊中運行宏使用“RunMacro”宏操作,或者使用DoCmd對象的RunMacro方法,在VBA代碼過程中都可以運行宏。4.通過窗體、數(shù)據(jù)表、報表或控件的事件中運行宏可以在對象的“屬性表”中的“事件”選項卡中,給各個事件綁定標準宏,在事件發(fā)生時即可運行宏。第6章宏34獨立宏的運行5.自動運行宏Access提供了一個專用的宏名,即Autoexec,也被稱為啟動宏,該宏在打開數(shù)據(jù)庫時會自動運行。如果用戶想在首次打開數(shù)據(jù)庫時執(zhí)行指定的操作,可以使用Autoex

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論