考點1 類模塊
窗體和報表模塊都是類模塊,而且它們各自與某一窗體或報表相關(guān)聯(lián)。窗體和報表模塊通常都含有事件過程,該過程用于響應窗體或報表中的事件。可以使用事件過程來控制窗體或報表的行為,以及它們對用戶操作的響應,例如:用鼠標單擊某個命令按鈕。
為窗體或報表創(chuàng)建第一個事件過程時,Microsoft Access將自動創(chuàng)建與之關(guān)聯(lián)的窗體或報表模塊。
考點12 常用操作方法
1打開和關(guān)閉窗體
(1)打開窗體操作命令格式為:
DoCmd.OpenForm formname[,view][,filtername][,wherecondition][,datamode][,windowmode][,openargs]
OpenForm方法具有下列參數(shù):
formname字符串表達式,代表當前數(shù)據(jù)庫中的窗體的有效名稱。
view下列固有常量之一:acDesign、 acFormDS、 acNormal(默認值)acpreview。
filtername字符串表達式,代表當前數(shù)據(jù)庫中查詢的有效名稱。
wherecondition字符串表達式,不包含WHERE關(guān)鍵字的有效SQL WHERE子句。
datamode下列固有常量之一:acFormAdd, acFormEdit , acFormPropertySettings(默認值)acFormReadOnly。
windowmode下列固有常量之一:acDialog、acHidden、acIcon、acWindowNormal默認值)
openargs字符串表達式。用來設(shè)置窗體的OpenArgs屬性。該設(shè)置可以在窗體模塊的代碼中使用。
(2)關(guān)閉窗體操作命令格式為:
DoCmd.Close[objecttype,objectname],[save]
Close方法具有下列參數(shù):
objecttype下列固有常量之一:acDataAccessPage、acDefaul(t默認值)、acDiagram、acForm、acMacro、acModu1e、acQuery、acReport、acServerView、acStoredProcedure、acTable。
objectname字符串表達式,代表有效的對象名稱,該對象的類型由objecttype參數(shù)指定。
save下列固有常量之一:acSaveNo、acSavePrompt(默認值)、aeSaveYes。
2打開和關(guān)閉報表
(1)打開報表操作命令格式為:
DoCmd.OpenReport reportname[,view][,filtername][,wherecondition]
OpenReport方法具有下列參數(shù):
reportname字符串表達式,代表當前數(shù)據(jù)庫中的報表的有效名稱。
view下列固有常量之一:acViewDesign, acViewNormal(默認值)、acViewPreview。
filtername字符串表達式,代表當前數(shù)據(jù)庫中查詢的有效名稱。
wherecondition字符串表達式,不包含WHERE關(guān)鍵字的有效SQL WHERE子句。
(2)關(guān)閉報表操作命令格式為:
關(guān)閉報表操作也可以使用DoCmd. Close命令來完成。
3輸入框(InputBox)
InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])
InputBox函數(shù)的語法具有以下命名參數(shù):
Prompt必需的。作為對話框消息出現(xiàn)的字符串表達式。prompt的最大長度大約是1024個字符,由所用字符的寬度決定。如果prompt包含多個行,則可在各行之間用回車符(Chr(13))、換行符(Chr(10))或回車換行符的組合(Chr(13)&Chr(10))來分隔。
Title可選的。顯示對話框標題欄中的字符串表達式。如果省略title,則把應用程序名放入標題欄中。
Default可選的顯示文本框中的字符串表達式,在沒有其他輸入時作為缺省值。如果省略default,則文本框為空。
Xpos可選的。數(shù)值表達式,成對出現(xiàn),指定對話框的左邊與屏幕左邊的水平距離。如果省略xpos,則對話框會在水平方向居中。
Ypos可選的。數(shù)值表達式,成對出現(xiàn),指定對話框的上邊與屏幕上邊的距離。如果省略ypos,則對話框被放置在屏幕垂直方向距下邊大約1/3的位置。
Helpfile可選的。字符串表達式,識別幫助文件,用該文件為對話框提供上下文相關(guān)的幫助。如果已提供helpfile,則也必須提供context。
Context可選的。數(shù)值表達式,由幫助文件的作者指定給某個幫助主題的幫助上下文編號。如果已提供context,則也必須要提供helpfile。
4消息框(MsgBox )
MsgBox(prompt[,buttons][,title][,helpfile,context])
MsgBox函數(shù)的語法具有以下命名參數(shù):
Prompt必需的。字符串表達式,作為顯示在對話框中的消自、。prompt的最大長度大約為1024個字符,由所用字符的寬度決定。如果prompt的內(nèi)容超過一行,則可以在每一行之間用回車符(Chr(13))、換行符(Chr(10))或是回車與換行符的組合(Chr(13 )&Chr(10))將各行分隔開來。
Buttons可選的。數(shù)值表達式是值的總和,指定顯示按鈕的數(shù)目及形式,使用的圖標樣式,缺省按鈕是什么以及消息框的強制回應等。如果省略,則buttons的缺省值為0。
Title可選的。在對話框標題欄中顯示的字符串表達式。如果省略title,則將應用程序名放在標題欄中。
Helpfile可選的。字符串表達式,識別用來向?qū)υ捒蛱峁┥舷挛南嚓P(guān)幫助的幫助文件。如果提供了helpfile,則也必須提供context。
Context可選的。數(shù)值表達式,由幫助文件的作者指定給適當?shù)膸椭黝}的幫助上下文編號。如果提供了contex,則也必須提供helpfile:
5VBA編程驗證數(shù)據(jù)
使用窗體和數(shù)據(jù)訪問頁,每當保存記錄數(shù)據(jù)時,所做的更改便會保存到數(shù)據(jù)源表中。在控件中的數(shù)據(jù)被改變之前或記錄數(shù)據(jù)被更新之前會發(fā)生BeforeUpdate事件。通過創(chuàng)建窗體或控件的BeforeUpdate事件過程,可以實現(xiàn)對輸入到窗體控件中的數(shù)據(jù)進行各種驗證。表8 -5列出了VBA中常用的驗證函數(shù)。
表8-5 VBA常用驗證函數(shù)
6計時事件Timer
VB中提供Timer時間控件可以實現(xiàn)“定時”功能。但VBA并沒有直接提供Timer時間控件,而是通過設(shè)置窗體的“計時器間隔(TimerInterval)”屬性與添加“計時器觸發(fā)(Timer)”事件來完成類似的“定時”功能。
處理過程是:Timer事件每隔TimerInterval時間間隔就會被觸發(fā)一次,并運行Timer事件過程來響應。這樣重復不斷,即實現(xiàn)“定時”處理功能。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |