VBA代码编程方法详解(三)
时 间:2010-10-25 19:46:46
作 者:江羽 ID:3967 城市:南昌
摘 要:VBA代码编程方法详解(第三部分)
正 文:
4.2 移除工程中部件
'************************************************************************
'公用过程:移除指定部件或删除某类部件
'ComponentType部件类别(可选参数),默认为标准模块
'VBCompName部件名(可选参数),默认不指定部件名
'***********************************************************************
Public Sub RemoveVBComponents(Optional VBCompType As vbext_ComponentType, _
Optional VBCompName As String = "")
Dim VBProj As VBProject '申明工程对象
Dim VBComp As VBComponent '申明部件对象
Dim VBComps As VBComponents '申明部件集合
'设定为当前工程
Set VBProj = VBE.ActiveVBProject
'设定为当前工程部件
Set VBComps = VBProj.VBComponents
'判断是否指定部件名,如未指定则删除所有指定类型部件
If VBCompName <> "" And VBCompType = 0 Then
VBComps.Remove VBComps(VBCompName)
Else
For Each VBComp In VBComps
If VBComp.Type = VBCompType Then
VBComps.Remove VBComps(VBComp.Name)
End If
Next
End If
End Sub
'移除指定所有类模块
Call RemoveVBComponents(vbext_ct_ClassModule)
'移除指定名部件,实例:指定“我的窗体”
Call RemoveVBComponents(, "我的窗体")
4.3 列举部件名及类型信息
'-------------------------------------------------------------------------------
'函数功能:根据所获取部件类型常量值,获得部件类别名
'-------------------------------------------------------------------------------
Function ComponentTypeToString(ComponentType As vbext_ComponentType) As String
Select Case ComponentType
Case vbext_ct_ClassModule
ComponentTypeToString = "类模块"
Case 100
ComponentTypeToString = "其它"
Case vbext_ct_MSForm
ComponentTypeToString = "微软窗体"
Case vbext_ct_StdModule
ComponentTypeToString = "标准模块"
Case Else
ComponentTypeToString = "未知类: " & CStr(ComponentType)
End Select
End Function
'----------------------------------------------------------------------------------------
'函数功能:列出所有部件名及类型
'调 用:ComponentTypeToString 函数,获取部件类型
'----------------------------------------------------------------------------------------
Public Function AllVBComponentsAndType() As String
Dim VBComp As VBComponent '申明工程部件
Dim VBComps As VBComponents '申明部件集合
Dim strComps As String '输出结果
Dim strObjName As String '对象名
Dim strType As String '类型名
Set VBComps = VBE.ActiveVBProject.VBComponents
'遍历部件集合,将部件名及类型值赋值给变量
For Each VBComp In VBComps
strObjName = VBComp.Name
strType = ComponentTypeToString(VBComp.Type)
'如果为其它类型,判断是ACCESS窗体、报表或其它对象
If strType = "其它" Then
If InStr(strObjName, "Form") > 0 Then
strType = "窗体"
ElseIf InStr(strObjName, "Report") > 0 Then
strType = "报表"
Else
strType = "其它"
End If
End If
'将获取的部件名及类型逐行输出
strComps = strComps & strObjName & Space(12) & strType & vbCrLf
Next
AllVBComponentsAndType = strComps '赋值输出
End Function
Access软件网QQ交流群 (群号:483923997) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 【Access小作品】简单的待...(04.30)
- 【Access窗体导出PDF】...(04.08)
- 【Access窗体导出PDF】...(04.07)
- Access两种方式实现即时更...(03.01)
- Access隐藏与显示lacc...(01.12)
- 【Access高效办公】将每个...(12.23)
- Access21点游戏源代码(12.13)
- 【Access窗体导出Exce...(11.15)
- 【Access开发】Acces...(11.14)
学习心得
最新文章
- Access快速开发平台企业版--...(05.09)
- 新版铁路工程管理系统V2.0(05.08)
- Access快速开发平台企业版--...(05.07)
- 【Access Call用法学习】...(05.06)
- access软件网站长张志简介 (05.05)
- 精美简单实用的系统面板(05.03)
- 【Access小作品】简单的待办任...(04.30)
- 从另一个ACCESS数据库批量导入...(04.29)
- Access日期格式的数据导出Ex...(04.28)
- ACCESS精华集锦资料.CHM(04.25)