考點12 常用操作方法
1打開和關閉窗體
(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關鍵字的有效SQL WHERE子句。
datamode下列固有常量之一:acFormAdd, acFormEdit , acFormPropertySettings(默認值)acFormReadOnly。
windowmode下列固有常量之一:acDialog、acHidden、acIcon、acWindowNormal默認值)
openargs字符串表達式。用來設置窗體的OpenArgs屬性。該設置可以在窗體模塊的代碼中使用。
(2)關閉窗體操作命令格式為:
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打開和關閉報表
(1)打開報表操作命令格式為:
DoCmd.OpenReport reportname[,view][,filtername][,wherecondition]
OpenReport方法具有下列參數(shù):
reportname字符串表達式,代表當前數(shù)據(jù)庫中的報表的有效名稱。
view下列固有常量之一:acViewDesign, acViewNormal(默認值)、acViewPreview。
filtername字符串表達式,代表當前數(shù)據(jù)庫中查詢的有效名稱。
wherecondition字符串表達式,不包含WHERE關鍵字的有效SQL WHERE子句。
(2)關閉報表操作命令格式為:
關閉報表操作也可以使用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可選的。字符串表達式,識別幫助文件,用該文件為對話框提供上下文相關的幫助。如果已提供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幫助的幫助文件。如果提供了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ù)
1打開和關閉窗體
(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關鍵字的有效SQL WHERE子句。
datamode下列固有常量之一:acFormAdd, acFormEdit , acFormPropertySettings(默認值)acFormReadOnly。
windowmode下列固有常量之一:acDialog、acHidden、acIcon、acWindowNormal默認值)
openargs字符串表達式。用來設置窗體的OpenArgs屬性。該設置可以在窗體模塊的代碼中使用。
(2)關閉窗體操作命令格式為:
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打開和關閉報表
(1)打開報表操作命令格式為:
DoCmd.OpenReport reportname[,view][,filtername][,wherecondition]
OpenReport方法具有下列參數(shù):
reportname字符串表達式,代表當前數(shù)據(jù)庫中的報表的有效名稱。
view下列固有常量之一:acViewDesign, acViewNormal(默認值)、acViewPreview。
filtername字符串表達式,代表當前數(shù)據(jù)庫中查詢的有效名稱。
wherecondition字符串表達式,不包含WHERE關鍵字的有效SQL WHERE子句。
(2)關閉報表操作命令格式為:
關閉報表操作也可以使用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可選的。字符串表達式,識別幫助文件,用該文件為對話框提供上下文相關的幫助。如果已提供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幫助的幫助文件。如果提供了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ù)