VBA代码编程方法详解(四)-江羽
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-教程


VBA代码编程方法详解(四)

发表时间:2010/10/26 评论(0) 浏览(8216)  评论 | 加入收藏 | 复制
   
摘 要:VBA代码编程方法详解(第四部分)
正 文:

4.4 判断部件是否存在

4.4.1 判断部件是否存在自定义函数

 

'-----------------------------------------------------------------------

'函数功能:判断指定模块是否存在,存在输出为True

'-----------------------------------------------------------------------

Public Function VBComponentExists(ByVal VBCompName As String) As Boolean

   Dim VBProj  As VBProject

   On Error Resume Next

   Set VBProj = VBE.ActiveVBProject

   '存在输出为True,否则为False

   VBComponentExists = CBool(Len(VBProj.VBComponents(VBCompName).Name))

End Function

4.4.2判断指定模块是否存在调用示例

   If VBComponentExists("模块1") = False Then

      MsgBox "不存在"

   Else

      MsgBox "存在"

   End If

 

4.5 导入部件文件添加部件

4.5.1 导入部件自定义过程

'导入部件文件添加部件

'输入参数:FileName(字符串变量) 指示欲添加部件的路径及文件名

Public Sub ImportFilesToVBComps(FileName As String)

   Dim VBProj     As VBProject

   Dim VBComps   As VBComponents

  

   On Error Resume Next

  

   Set VBProj = VBE.ActiveVBProject

   Set VBComps = VBProj.VBComponents

   '导入指定部件文件,添加部件

   VBComps.Import (FileName)

End Sub

4.5.2 导入部件文件示例

'调用示例:从指定C盘导入部件文件"模块1"添加到当前工程

Call ImportFilesToVBComps("C:\模块1")

说明:导入文件部件如与部件重名,不会覆盖原部件,而是添加序号重新命名。

4.6 导出部件为部件文件

4.6.1 导出部自定义过程

'过程功能:导出部件为部件文件

'输入参数:FileName(字符串变量) 用来指定部件输出为文件的文件名及导出路径

'           CompsFile(Variant) 可以是部件名或是部件索引,用以指定欲导出部件

Public Sub ExportVBCompsToFiles(CompsFile As Variant, FileName As String)

   Dim VBProj    As VBProject

   Dim VBComps  As VBComponents

  

   On Error Resume Next

  

   Set VBProj = VBE.ActiveVBProject

   Set VBComps = VBProj.VBComponents(CompsFile)

   '导出部件为部件文件

   VBComps.Import (FileName)

End Sub

4.6.2 导出部件示例

'调用示例一:指定部件(模块1

Call ExportVBCompsToFiles("模块1","C:\模块1.bas")

 

'调用示例二:通过部件索引导出部件,实例中:索引[1][Form_窗体1]类对象

Call ExportVBCompsToFiles(1,"C:\ Form_窗体1.cls")

说明:你可以通过“部件名”或“索引”来指定需导出部件。

4.6.3 根据部件类型获得输出部件文件后缀名

'根据部件类型,确定输出部件文件后缀名

Public Function GetFileExtension(VBComp As VBIDE.VBComponent) As String

     Select Case VBComp.Type

        Case vbext_ct_ClassModule

            GetFileExtension = ".cls"

        Case vbext_ct_Document

            GetFileExtension = ".cls"

        Case vbext_ct_MSForm

            GetFileExtension = ".frm"

        Case vbext_ct_StdModule

            GetFileExtension = ".bas"

        Case Else

            GetFileExtension = ".bas"

    End Select

End Function

说明:导出文件名要根据不同部件类型,指定后缀名,见下表:

部件对象

后缀名

描述

ACCESS类对象

cls

通常所说的“窗体”或“报表”对象等。

类模块

cls

含有类定义的模块。

标准模块

bas

只包含过程、类型以及数据的声明和定义的模块。

窗体

frm

指微软窗体,而非ACCESS类对象窗体。

 

  上一页 下一页


Access软件网交流QQ群(群号:198465573)
 
 相关文章
VBA代码编程方法详解(一)  【江羽  2010/10/25】
VBA代码编程方法详解(二)  【江羽  2010/10/25】
VBA代码编程方法详解(三)  【江羽  2010/10/25】
VBA代码编程方法详解(五)  【江羽  2010/10/26】
VBA代码编程方法详解(六)  【江羽  2010/10/26】
常见问答
技术分类
相关资源
文章搜索
关于作者

江羽

文章分类

文章存档

友情链接