版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
數(shù)據(jù)庫及應用基礎第7章宏學習目標
通過本章的學習,應該了解(1)宏的概念及分類。(2)創(chuàng)建宏。(3)創(chuàng)建宏組。(4)宏的幾種運行方式。(5)宏的編輯和調(diào)試。(6)宏的運用。主要內(nèi)容7.1宏的概述7.2宏的創(chuàng)建7.3宏的執(zhí)行和調(diào)試7.4事件驅(qū)動7.5使用宏創(chuàng)建菜單7.1宏概述
在處理Access數(shù)據(jù)庫對象的過程中,往往需要重復執(zhí)行某些任務或操作。例如,向表中添加記錄時,需要打開同一個窗體,為了簡化操作步驟,可以將這些重復執(zhí)行的任務或操作組織在一個宏中,在應用時直接調(diào)用和運行宏,自動地執(zhí)行集成在宏中的各項操作。
7.1宏概述
宏并不直接處理數(shù)據(jù)庫中的數(shù)據(jù),它是組織Access數(shù)據(jù)庫對象的工具。
在Access數(shù)據(jù)庫中,表、查詢、窗體和報表這4個對象,各自具有強大的數(shù)據(jù)處理功能,能獨立地完成數(shù)據(jù)庫中的特定任務,但是它們各自獨立工作,不能相互協(xié)調(diào)相互調(diào)用,使用宏可以將這些對象有機地整合在一起,完成特定的任務。
7.1.1宏的概念
宏是Access中執(zhí)行特定任務的操作和操作集合,其中的每個操作實現(xiàn)特定的功能,是由Access本身提供的。宏可以是包含操作序列的一個宏,也可以是多個宏組成的宏組。使用條件表達式可以決定在某些條件下運行宏時,某個操作是否執(zhí)行。
創(chuàng)建宏的目的是自動處理某一項或者一系列任務,可以將任務當作一個或多個基本操作的集合,其中每個基本操作都能單獨實現(xiàn)某一項特定的功能,如打開窗體,關閉窗體等。如圖所示是一個含有3個操作的宏。
(1)打開某個窗體(2)顯示一個信息提示框(3)關閉窗體。當執(zhí)行這個宏時,將自動執(zhí)行這3個操作。通過宏的自動重復執(zhí)行操作的能力,無需編寫程序就可以設計出具有一定功能的數(shù)據(jù)庫應用系統(tǒng)。
在Access中,共有80多種基本操作可供宏選擇使用和執(zhí)行。在實際操作過程中,很少單獨使用一個宏命令,往往將這些命令組合在一起按照順序依次執(zhí)行以完成一項特定的任務。這些命令的執(zhí)行可以通過窗體或表中控件的某個事件來觸發(fā),也可以在數(shù)據(jù)庫的運行過程中自動實現(xiàn)。7.1.2常用的宏操作Access2010提供了80多個宏操作命令。根據(jù)宏的用途將它們分成以下8類。(1)窗口管理命令。(2)宏命令。(3)篩選/查詢/搜索命令。(4)數(shù)據(jù)導入導出命令。(5)數(shù)據(jù)庫對象命令(6)數(shù)據(jù)輸入命令(7)系統(tǒng)命令(8)用戶操作命令。宏操作主要功能AddMenu創(chuàng)建菜單欄或快捷菜單AddlyFilter用篩選、查詢或SQL語句的Where子句來選擇表、窗體或報表中顯示的記錄Beep使計算機的揚聲器發(fā)出嘟嘟聲CancelEvent取消引起宏操作的事件Close關閉指定的數(shù)據(jù)庫對象,包括表、查詢、窗體、報表或模塊窗口CopyObject復制數(shù)據(jù)庫對象DeleteObject刪除數(shù)據(jù)庫對象Echo運行宏時,顯示或不顯示狀態(tài)信息FindRecord在表、查詢或窗體中查找指定條件的第一條記錄FindNext依據(jù)FindRecord操作使用的查找準則查找下一條記錄GotoControl將光標移動到窗體中特定的控件上GotoPage將光標移動到窗體中特定頁的第一個控件上GotoRecord在表、查詢或窗體中,添加新記錄或?qū)⒐鈽艘苿拥街付ǖ挠涗汬ourglass當運行宏時,鼠標指針顯示為沙漏狀Maximize最大化活動窗口Minimaze最小化活動窗口MoveSize移動或調(diào)整活動窗口的尺寸表7-1宏操作(部分)宏幾乎可以實現(xiàn)數(shù)據(jù)庫的所有操作。(1)打開和關閉表、查詢、窗體等對象。(2)執(zhí)行報表的顯示、預覽和打印功能。(3)執(zhí)行查詢操作及數(shù)據(jù)篩選功能。(4)設置窗體中控件的屬性值。(5)執(zhí)行菜單上的選項命令。(6)顯示和隱藏工具欄。7.1.3宏的功能
宏的創(chuàng)建方法與其它Access數(shù)據(jù)庫對象一樣,都可以在設計視圖窗口中進行。在創(chuàng)建宏的過程中,主要工作是設置宏所包含的操作和相應的參數(shù)。7.2宏的創(chuàng)建創(chuàng)建宏時,首先打開宏的設計窗口,其操作步驟如下:(1)打開數(shù)據(jù)庫。(2)選擇“創(chuàng)建”選項卡的“宏與代碼”組,單擊“宏”按鈕
,打開“宏”設計器窗口,同時打開“操作目錄”面板,如圖所示。7.2.1宏的設計視圖
宏設計窗口供用戶設計宏使用,用戶設計的宏所包含的所有操作都會顯示在宏設計窗口中。在“操作目錄”面板中,分類列出了所有的宏操作命令,設計宏時可以直接選擇所需要的命令。
宏通常有宏操作名稱和參數(shù)組成,當選擇或直接輸入宏操作命令后,系統(tǒng)會自動展開宏并顯示該命令的相關參數(shù)。
在使用宏命令時,除了正確使用宏操作的名稱,還應具體的命令根據(jù)需要設置相應的參數(shù),用戶在使用時要詳細了解操作參數(shù)的含義?!緦嵗?-1】在“選課管理”數(shù)據(jù)庫中,創(chuàng)建一個宏,其功能為打開“教師信息”窗體,顯示所有職稱為“教授”教師記錄?!静僮鞑襟E】(1)打開數(shù)據(jù)庫“選課管理”。(2)選擇“創(chuàng)建”選項卡中的“宏與代碼”組,單擊“宏”按鈕,系統(tǒng)將自動創(chuàng)建名為“宏1”的宏,同時打開“宏設計”窗口。(3)在“添加新操作”列表框中選擇宏命令“OpenForm”,展開操作參數(shù)。7.2.2宏的創(chuàng)建(4)設置操作參數(shù)。在操作參數(shù)窗口中,使用“窗體名稱”的下拉式按鈕選擇窗體名稱“教師信息”,在“視圖”選項中選擇“窗體”,在“當條件”選項中輸入表達式“[職稱]="教授"”,數(shù)據(jù)模式設置為“只讀”,如圖所示。
(5)單擊“保存”按鈕,打開“另存為”對話框,在“宏名稱”文本框中輸入“打開教師信息窗體”,然后單擊“確定”按鈕,宏設計完成。(6)單擊“執(zhí)行”按鈕
,查看宏運行的結果。
如果在一個宏中有多個宏操作,則按照上面的方法逐個添加宏名稱以及設置相應的參數(shù)。
宏組是指一個宏文件中包含一個或多個宏,這些宏稱為子宏。在宏組中,每個子宏都是獨立的,互不相關。將功能相近或操作相關的宏組織在一起構成宏組,可以為設計數(shù)據(jù)庫應用程序帶來方便。宏組也是Access數(shù)據(jù)庫中的對象。
在宏組中,每個子宏都必須定義一個唯一的名稱,以方便調(diào)用。
創(chuàng)建宏組與創(chuàng)建宏的方法基本相同,需要打開宏設計窗口,所不同的是在創(chuàng)建過程中為每個子宏命名,為每個宏指定宏的名稱。7.2.3宏組的創(chuàng)建【實例7-2】在“選課管理”數(shù)據(jù)庫中,創(chuàng)建一個宏組,其中包括4個宏操作,分別是打開學生表、打開學生信息瀏覽窗體、打開“學生名單”報表和關閉窗體?!静僮鞑襟E】(1)打開數(shù)據(jù)庫“選課管理”。(2)選擇“創(chuàng)建”選項卡中的“宏與代碼”組,單擊“宏”按鈕,打開“宏設計”窗口。(3)在“操作目錄”窗格中,將程序流程中的子宏命令“SubMacro”拖到“添加新操作”組合框中,在子宏名稱文本框中,默認名稱為“Sub1”,將該名稱改為“打開學生表”,在“添加新操作”組合框中選擇命令“Opentable”,設置表名稱為“學生”,視圖為“數(shù)據(jù)表”,數(shù)據(jù)模式為“只讀”,如圖所示。
(4)用同樣的方法添加其余的宏,設置相應的操作參數(shù),設置結果如圖所示。每個宏的操作參數(shù)設置如表7-2所示
宏名宏操作操作參數(shù)打開學生表OpenTable表名:學生;視圖:數(shù)據(jù)表;數(shù)據(jù)模式:只讀打開學生信息窗體OpenForm窗體名稱:學生信息瀏覽;視圖:窗體;數(shù)據(jù)模式:只讀,窗口模式:普通打開學生報表OpenReport報表名稱:學生名冊;視圖:打??;窗口模式:普通關閉學生表CloseWindows對象類型:表;對象名稱:學生;保存:是(4)單擊“保存”按鈕,打開“另存為”對話框,在“宏名稱”文本框中輸入“宏組學生表操作”,然后單擊“確定”按鈕,宏設計完成。
宏組的運行需通過對象的事件觸發(fā)。當直接運行宏時,只執(zhí)行最前面的宏。宏與宏組的區(qū)別:(1)宏是由宏操作構成的,而宏組是由宏構成的。(2)宏組中的子宏必須命名,而宏不需要。(3)宏在運行時,所有的宏操作按順序執(zhí)行;而宏組在運行時只執(zhí)行最前面的宏。
條件宏是指在宏中的某些操作帶有條件,當執(zhí)行宏時,這些操作只有在滿足條件時才得以執(zhí)行。對數(shù)據(jù)進行處理時,可能希望僅當滿足特定的條件時才在宏中執(zhí)行某個操作,在這種情況下,可以使用條件來控制宏的流程。宏在執(zhí)行時能對條件進行測試,并在條件為真時運行指定的宏操作。
7.2.4條件宏的創(chuàng)建【實例7-3】在實例7-2中所創(chuàng)建的宏中添加一個新功能,在打開報表之前提示用戶確認,提示信息為“請打開打印機”?!静僮鞑襟E】(1)打開數(shù)據(jù)庫“選課管理”及實例7-2中所創(chuàng)建的宏“宏組學生表操作”。(2)選擇宏操作“打開學生報表”,在“操作目錄”窗格中將程序流程中的子宏命令“if”拖到子宏名稱的下方,然后將宏操作“OpenReport”拖動到“添加新操作文本框中”,在“if”后的文本框中輸入表達式“MsgBox(”請打開打印機!“,1)=1”,如圖7-7所示。(3)單擊“保存”按鈕,打開“另存為”對話框,在“宏名稱”文本框中輸入“條件宏學生表操作”,然后單擊“確定”按鈕,宏設置完成。
注:表達式的含義是,在彈出的消息框(如圖7-8)中顯示信息“請打開打印機!”以及“確定”和“取消”按鈕,當用戶單擊“確定”按鈕時,執(zhí)行宏操作OpenReport
前面所創(chuàng)建的宏獨立于窗體、報表之外,稱為獨立宏,與之相反,嵌入宏嵌入在窗體、報表或控件的事件中,是所嵌入對象的一部分,因此嵌入宏在導航窗格中是不可見的。
通常,將宏的執(zhí)行與窗體中命令按鈕的單擊事件相結合,當單擊窗體中的命令按鈕時,執(zhí)行相應的宏操作。
7.3創(chuàng)建嵌入宏
事件是一種特定的操作,在某個對象上發(fā)生或?qū)δ硞€對象發(fā)生。
MicrosoftAccess可以響應多種類型的事件:鼠標單擊、數(shù)據(jù)更改、窗體打開或關閉及許多其他類型的事件。事件的發(fā)生通常是用戶操作的結果。事件過程是由宏或程序代碼構成的用于處理引發(fā)的事件或由系統(tǒng)觸發(fā)的事件運行過程。7.4.1事件的概念Access數(shù)據(jù)庫對象能夠響應許多類型的事件,響應方式由每一個對象的內(nèi)部所含行為決定。Access事件可以由特定對象的屬性來識別,并根據(jù)該操作決定觸發(fā)哪個宏。
Access中的事件可以分為以下幾類。窗口事件、數(shù)據(jù)事件、焦點事件、鍵盤事件、鼠標事件、打印事件等。Access可以通過窗體控件和報表的特定屬性識別某一個事件,當用戶執(zhí)行Access能識別的事件時,都能夠?qū)е翧ccess執(zhí)行一個宏,這就是所謂的事件觸發(fā)操作。
Access可以對窗體、報表或控件中的多種類型的事件做出響應,包括單擊鼠標、修改數(shù)據(jù)、打開或關閉窗體以及打印報表等。
7.4.2事件觸發(fā)操作
【實例7-4】創(chuàng)建一個窗體,在窗體中添加4個命令按鈕,其功能分別是打開學生表、打開學生信息瀏覽窗體、打開“學生名單”報表和關閉窗體,引用實例7-2創(chuàng)建的宏組來實現(xiàn)?!静僮鞑襟E】(1)打開數(shù)據(jù)庫“選課管理”。(2)在數(shù)據(jù)庫中新建一個窗體,添加4個命令按鈕,其標題屬性分別設置為“打開學生表”、“打開學生信息窗體”、“打開學生名單報表”和“關閉窗體”,如圖所示。
(3)使用命令按鈕控件向?qū)гO置每個命令按鈕的操作,使用列表框選擇宏組中的宏操作。如圖所示。(4)保存窗體,窗體名稱為“學生管理”,切換到從窗體視圖,單擊不同的命令按鈕可以運行相應的宏操作。7.2.6宏的編輯1.添加宏操作對已經(jīng)創(chuàng)建的宏可以繼續(xù)添加新的宏操作,操作步驟如下:(1)在“導航”窗格中選擇“宏”,右單擊要修改的宏,在彈出的快捷菜單中選擇“設計視圖”,打開“宏設計”視圖窗口。(2)添加新的宏操作并設置相關的參數(shù)。(3)重復步驟(2)可以繼續(xù)添加。(4)保存宏。2.刪除宏操作如果需要在已有的宏中刪除宏操作,可采用下列3種方法:(1)選中要刪除的宏,按Delete鍵。(2)右單擊要刪除的宏,在快捷菜單中選擇“刪除”命令。(3)直接單擊宏操作右側的“刪除”按鈕。3.更改宏操作順序?qū)τ谠O計好的的宏,可以對其中的宏操作調(diào)整排列順序,操作方法有以下3種。(1)直接拖動要移動的宏操作到需要的位置。(2)選中宏操作,然后按Ctrl+↑和Ctrl+↓鍵(3)選中宏操作,單擊該操作右側的“上移”和“下移”按鈕。
對于創(chuàng)建的宏或宏組,只有運行后,才可以實現(xiàn)宏的功能,得到宏操作的結果。在宏運行時有時會出現(xiàn)錯誤或異常情況,需要對宏或宏組進行調(diào)試。此外,用戶可以對已經(jīng)創(chuàng)建的宏進行編輯和修改。7.3宏的執(zhí)行和調(diào)試7.3.1宏的執(zhí)行
創(chuàng)建宏或宏組之后,可以在數(shù)據(jù)庫中運行。運行宏的方式有以下幾種:1.在宏設計窗口中運行
在宏設計窗口中,選擇“創(chuàng)建”選項卡中的“宏與代碼”組,單擊“宏”按鈕
可以直接運行已經(jīng)設計好的宏。2.在數(shù)據(jù)庫窗口中運行
在數(shù)據(jù)庫窗口中,選擇“宏”對象,可以使用下列方法運行宏。(1)雙擊所要運行的宏的名稱。(2)右擊所要運行的宏,在快捷菜單中選擇命令“運行”。3.在Access主窗口中運行
在Access主窗口中,選擇“數(shù)據(jù)庫工具”選項卡中的“宏”組,單擊“運行宏”按鈕
,打開“執(zhí)行宏”對話框,如圖所示,直接在下拉列表框中選擇要執(zhí)行的宏的名稱或直接輸入宏名,然后,單擊“確定”按鈕。4.在其它宏中運行
可以在其它的宏中運行一個已設計好的宏,其操作方法如下:(1)在宏中添加RunMacro操作。(2)在“宏名”參數(shù)框中輸入要執(zhí)行的宏名。5.自動運行宏Access數(shù)據(jù)庫提供了一個專用的宏Autoexec,又稱其為自動宏。
如果數(shù)據(jù)庫中有名為Autoexec的宏,則在打開數(shù)據(jù)庫時自動運行宏。因此,如果用戶想在打開數(shù)據(jù)庫時自動執(zhí)行某些操作,可以通過自動宏實現(xiàn)。
在宏執(zhí)行時有時會的到異常的結果,可以使用宏的調(diào)試工具對宏進行調(diào)試,常用的方法是單步執(zhí)行宏,即每次執(zhí)行一個操作。在單步執(zhí)行宏時,用戶可以觀察到宏的執(zhí)行過程以及每一步的結果,從而發(fā)現(xiàn)出錯的位置并進行修改。7.3.2宏的調(diào)試單步執(zhí)行宏的操作方法如下:(1)打開宏設計窗口。(2)單擊工具欄上的“單步”按鈕,再單擊“運行”按鈕,打開“單步執(zhí)行宏”對話框,如圖所示。
在“單步執(zhí)行宏”對話框中,顯示了宏名、條件、操作名稱和參數(shù)。通過對這些內(nèi)容進行分析,可以判斷宏的執(zhí)行是否正常。3個按鈕的功能如下:①單步執(zhí)行:執(zhí)行對話框中顯示的宏操作,如果執(zhí)行正常,則執(zhí)行下一個宏操作。②停止:停止宏的執(zhí)行,關閉對話框。③繼續(xù):關閉“單步執(zhí)行”模式,執(zhí)行宏中的其余操作。
(3)錯誤處理如果在宏的執(zhí)行過程中出現(xiàn)錯誤,會彈出一個消息框,顯示宏操作的錯誤信息,例如,當宏操作“OpenReport”的操作參數(shù)“報表名稱”指定了一個不存在的報表,則執(zhí)行該操作時會打開如圖所示的消息框。
在消息框中,指出了出錯原因并給處理建議。用戶可以根據(jù)實際情況對宏進行修改。7.4使用宏創(chuàng)建菜單
在數(shù)據(jù)庫應用系統(tǒng)中,很多功能都可以用菜單的方式實現(xiàn),可以為數(shù)據(jù)庫應用系統(tǒng)創(chuàng)建菜單系統(tǒng),在Access2010中,設計菜單使用宏來實現(xiàn),而菜單系統(tǒng)本身也是依靠宏來運行的。創(chuàng)建菜單使用AddMenu命令,AddMenu命令能夠完成的菜單有3類。(1)自定義快捷菜單:使用自定義快捷菜單,可以替代窗體或報表中的內(nèi)置的快捷菜單。(2)全局快捷菜單:除已經(jīng)添加了自定義快捷菜單的窗體對象外,全局快捷菜單可以替代其余所有沒有設定的窗體等對象中的默認右鍵菜單。(3)“加載項”選項卡的自定義菜單:這種自定義菜單出現(xiàn)在程序的“加載項”選項卡下,可用于特定窗體或報表,也可用于整個數(shù)據(jù)庫。創(chuàng)建自定義菜單的操作步驟如下:(1)為自定義菜單欄上所需的每個下拉式菜單均創(chuàng)建一個包含AddMenu操作的菜單欄宏。(2)為每個菜單創(chuàng)建一個宏組為每個下拉式菜單指定命令。每個命令都運行由該宏組中的一個宏所定義的操作集合。(3)將所有下拉菜單組合到
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國肉類加工產(chǎn)業(yè)運營狀況及投資前景預測報告
- 二零二五年高品質(zhì)公寓租賃服務合同模板6篇
- 2025-2030年中國等離子切割機市場運行狀況及投資發(fā)展前景預測報告
- 2025-2030年中國相紙行發(fā)展現(xiàn)狀及前景規(guī)劃研究報告新版
- 2025-2030年中國電動自行車電池市場未來發(fā)展趨勢及前景調(diào)研分析報告
- 2025-2030年中國甘露醇行業(yè)現(xiàn)狀調(diào)研及投資前景分析報告
- 2025-2030年中國環(huán)烷基潤滑油市場運行狀況及投資前景趨勢分析報告
- 蘇州市物業(yè)服務2025年度社區(qū)活動組織合同3篇
- 2025年度網(wǎng)絡安全防護臨時工聘用合同模板4篇
- 2025年度高端家電銷售擔保合同(品牌獨家)2篇
- 臺資企業(yè)A股上市相關資料
- 電 梯 工 程 預 算 書
- 羅盤超高清圖
- 參會嘉賓簽到表
- 機械車間員工績效考核表
- 形式發(fā)票格式2 INVOICE
- 2.48低危胸痛患者后繼治療評估流程圖
- 人力資源管理之績效考核 一、什么是績效 所謂績效簡單的講就是對
- 山東省醫(yī)院目錄
- 云南地方本科高校部分基礎研究
- 廢品管理流程圖
評論
0/150
提交評論