




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
8.6宏對象的其他應用
8.6.1利用宏生成VBA程序代碼8.6.2啟動時自動運行的宏AutoExec8.6.3響應組合鍵的宏組AutoKeys返回Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第1頁!由于宏的設計過程是一個人機對話的過程,它不要求設計者刻意地記憶命令、參數及其相關語法,因此是一種非常方便的編程工具。實際上,宏本身就是程序,只不過是一種控制方式簡單的程序而已。它由若干操作組成,一般情況下采用順序執行的方式運行,也可以通過設置操作執行的條件來實現操作執行順序的跳轉。自然會考慮能否利用宏設計視圖以人機對話的方式設計宏,然后將其轉換為對應的VBA程序.8.6.1利用宏生成VBA程序代碼Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第2頁!首先,在數據庫設計視圖宏對象選項卡上選中需要轉換為VBA程序的宏對象,然后在窗口菜單欄上依次單擊【工具】|【宏】|【將宏轉換為VisualBasic代碼】命令,隨即彈出“轉換宏”對話框,單擊其上的“轉換”按鈕“”,即完成了將宏轉換為VBA程序的過程。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第3頁!例如,可以將“零售商店管理信息系統”數據庫中的宏“銷售記錄”轉換為對應的VBA程序。其操作過程為:在數據庫設計視圖宏對象選項卡上選中宏“銷售記錄”,在窗口菜單欄上依次單擊【工具】|【宏】|【將宏轉換為VisualBasic代碼】命令,隨即彈出的“轉換宏”對話框如圖8-15所示。根據需要在這個對話框中完成兩個選項的選定操作后,單擊“轉換”按鈕“”,即可將宏對象“銷售記錄”轉換成為一個名為“被轉換的宏——銷售記錄”的模塊對象,其間包含著與宏“銷售記錄”的功能完全相同功能的VBA程序代碼。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第4頁!在“轉換宏”對話框中有兩個選項,選中后依次表示:轉換形成的VBA程序中包含進行出錯處理的OnError子程序段;轉換形成的VBA程序中包含關于宏對象的注釋。此處,讓我們來看看轉換成的VBA程序代碼,其間包含出錯處理程序段和宏注釋。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第5頁!銷售記錄_銷售記錄_Exit:ExitFunction銷售記錄_銷售記錄_Err:MsgBoxError$Resume銷售記錄_銷售記錄_ExitEndFunction注意,由宏轉換成的VBA程序段是一個VBA函數“Function”,其調用方式不同于VBA子程序“PrivateSub”。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第6頁!合理地使用這個命名為AutoExec的特殊宏,可在首次打開數據庫時執行一個或一系列的操作,包括某些應用系統初始參量的設定、打開應用系統操作主窗口等等。在實例“零售商店管理信息系統”數據庫中,設計有一個名為“AutoExec”的宏對象,其間包含一個操作:OpenForm"零售商店管理信息系統",acNormal,"","",,acNormal這就使得當打開“零售商店管理信息系統”數據庫時,即會自動打開數據庫窗體“零售商店管理信息系統”,而這個窗體是整個數據庫應用系統的主控窗體。對于一個可以發布的數據庫應用系統,這一項功能是非常必要的。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第7頁!圖8-16用于設置啟動程序的“啟動”對話框
Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第8頁!為了滿足這種對于組合式快捷鍵的應用需求,Access提供了另一個特殊的宏對象名“AutoKeys”。在命名為“AutoKeys”的宏對象中,我們可以采用宏組的形式定義某些組合鍵按下后應該進行的操作,從而為Access數據庫應用系統提供一整套組合式快捷鍵功能。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第9頁!圖8-17“AutoKeys”設計視圖及其對應操作參數設置
Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第10頁!圖8-15“轉換宏”對話框
Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第11頁!'------------------------------------------------------------'銷售記錄_銷售記錄'------------------------------------------------------------Function銷售記錄_銷售記錄()OnErrorGoTo銷售記錄_銷售記錄_Err'打開“銷售數據錄入”窗體
DoCmd.OpenForm"銷售數據錄入",acNormal,"","",,acNormalIf(Weekday(Date,2)=7)Then'若逢周日,給出提示
BeepMsgBox"今天周日,客流量較大,辛苦了!",vbOKOnly,"注意:"
EndIfAccess2003:8宏對象的其他應用共17頁,您現在瀏覽的是第12頁!如果在一個Access數據庫中創建一個命名為“AutoExec”的宏對象,將得到這樣一種效果:一旦這個數據庫被打開,AutoExec宏對象中的個宏將得到執行。這是因為,只要Access得到打開一個數據庫的操作指令,它將在打開這個數據庫后立即去尋找其中是否存在一個命名為“AutoExec”的宏對象,如果找到,則運行它。8.6.2啟動時自動運行的宏AutoExecAccess2003:8宏對象的其他應用共17頁,您現在瀏覽的是第13頁!對于一個包含“AutoExec”宏的Access數據庫,如果想在打開數據庫時阻止自動運行“AutoExec”宏,可在打開數據庫時按住SHIFT鍵不放開,以此來阻止Access自動運行“AutoExec”宏。除了可以利用“AutoExec”宏實現打開數據庫時自動運行一個應用程序以外,Access還提供另外一種實施方案:通過設置數據庫設計視圖窗口菜單欄上的【工具】|【啟動】命令,在隨即彈出的“啟動”對話框中進行合適的選項設置,也可以控制如何啟動數據庫或應用程序。“啟動”對話框如圖8-16所示,其中,我們設置啟動顯示窗體為“零售商店管理信息系統”。Access2003:8宏對象的其他應用共17頁,您現在瀏覽的是第14頁!在一般Windows應用程序中,為了使用剪貼板進行對象的復制粘貼操作,除了可以利用菜單選項或工具按鈕實現以外,可能很多人都知道“^C”是復制操作的組合式快捷鍵、“^V”是粘貼操作的組合式快捷鍵,且非常習慣于使用它們。那么,在一個Access數據庫應用系統中,是否也可能出現對這種組合式快捷鍵的應用需求呢?如果確實有這樣的需求,又該如何滿足它呢?8.6.3響應組合鍵的宏組AutoKeysAccess2003:8宏對象的其他應用共17頁,您現在瀏覽的是第15頁!例如:在實例“零售商店管理信息系統”數據庫中,設計有一個名為“AutoKeys”的宏對象,其間包含五個宏,每個宏包含一個“RunMacro”操作,分別定義了:“^g”組合鍵執行宏“柜存信息”,“^j”組合鍵執行宏“進貨數據”,“^k”組合鍵執行宏“庫存數據”,“^s”組合鍵執行宏“上柜數據”,“^x”組合鍵執行宏“銷售數據”。在這個宏對象的支持下,按下上述任一組合鍵即可運行相應的宏,而這些宏又都分別包含打開某一個窗體對象的操作,因此使得打開相應窗體對象的操作可以采用上述快捷鍵的方式進行,從而方便了操作者的操作過程。
實例“零售商店管理信息系統
”數據庫中的宏對象“AutoKeys”設計視圖及其對應操作參數設置如圖8-17所示。Access2003:8宏對象的其他應用共17頁,您
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論