表示一个工程。可用 VBProject 对象设置工程的属性、访问 VBComponents 集合以及访问 References 集合。通常我们会用ActiveVBProject返回“工程”窗口中选定的工程,但在实际编程中,无论此工程是否被显式地选定,都只有一个工程是活动的。
3.1判断工程是否锁定
通过工程Protection属性,判断工程锁定状态。工程Protection 属性(只读),指示工程是否处于保护状态。返回的值为一事先定义好的常量,表示工程的状态。
Protection属性常量:
常数
|
值
|
描述
|
Vbext_pp_none
|
0
|
常量代表指定的工程未被保护。
|
vbext_pp_locked
|
1
|
常量代表指定的工程是被锁住。
|
3.1.1 判断工程是否锁定自定义函数
'函数功能:判断工程是否锁定
Public Function VBProjectlocked(Optional VBProj As VBProject = Nothing) As Boolean
Dim Proj As VBProject
'如未指定工程,则为当前工程
If VBProj Is Nothing Then
Set Proj = VBE.ActiveVBProject
Else
Set Proj = VBProj
End If
'判断工程是否锁定
If Proj.Protection = vbext_pp_locked Then
VBProjectlocked = True
Else
VBProjectlocked = False
End If
End Function
3.1.2 调用自定义函数,判断当前工程是锁定示例
'函数输出为真(True),否则当前工程锁定
If VBProjectlocked = True Then
MsgBox "工程已锁定"
Else
MsgBox "工程未锁定"
End If
3.2 获得工程名
'获得当前工程名
VBE.ActiveVBProject.Name
代表一个包含在工程中的部件,例如类模块或标准模块。使用 VBComponent 对象访问与部件关联的代码模块CodeModule或改变部件的属性设置。
4.1 添加工程部件
4.1.1向当前工程添加部件公用过程
'***********************************************************************
'公用过程:添加模块或指定名模块
' ComponentType部件类型(可选参数),默认为标准模块
' VBCompName部件名(可选参数),默认不指定部件名
'***********************************************************************
Public Sub AddVBComponents(Optional ComponentType As vbext_ComponentType=1, _
Optional VBCompName As String = "")
Dim VBProj As VBProject '申明工程(项目)对象
Dim VBComps As VBComponents '申明部件集合
'设定为当前工程
Set VBProj = VBE.ActiveVBProject
设定为当前工程部件集合
Set VBComps = VBProj.VBComponents
'判断是否指定部件名,未指定则按默认名建立指定类型部件
If VBCompName = "" Then
VBComps.Add (ComponentType)
Else
VBComps.Add(ComponentType).Name = VBCompName
End If
End Sub
4.1.2 调用自定义过程,添加标准模块
'例一:以默认名添加标准模块
Call AddVBComponents
'例二:以指定名“我的模块”添加标准模块
Call AddVBComponents(, "我的模块")
4.1.3 调用自定义过程,添加类模块
'例一:以默认名添加类模块
Call AddVBComponents(2)
'例二:以指定名“我的类模块”添加标准模块
Call AddVBComponents(2, "我的类模块")
4.1.4 调用自定义过程,添加(MSForm)窗体
'例一:以默认名添加MSForm窗体
Call AddVBComponents(3)
'例二:以指定名“我的窗体”添加MSForm窗体
Call AddVBComponents(3, "我的窗体")
说明:这里窗体是指“Microsoft 窗体”,而非ACCESS通常意义所说的窗体,ACCESS窗体实际为ACCESS类对象,你可以通过CreateForm 方法创建一个ACCESS对象窗体。
上一页 下一页