注册  登录  51422c006da9874db3addf6144acf408    退出

Tag标签 会员升级 技术服务 财税咨询 免费系统 联系我们 关于网站

Office教程网

当前位置: 首页 > 编程教程 > VBA教程

用VBA代码自动引用树控件方法

发布时间:2021-12-06浏览量:来源: 网络收集小编: Jamie

将基于access开发的程序拷贝到其他电脑时,treeview控件老出问题,后来发现是mscomctl.ocx引用丢失,于是在网上下载了一个mscomctl.ocx放到C:\Windows\System32文件夹中,每次只能先去掉引用,然后再打开引用对话框重新手动引用。很是麻烦不利于程序的发布。

请问可不可以将该引用直接写入程序中,该如何实现? 


解决方法

    '用VBA代码自动引用树控件
    Dim REFE As References     '声明REFE为引用
    Dim strFileName As String   '声明strFileName为文本型变量
    Dim rf
    Set REFE = Application.References
    For Each rf In REFE    '在引用中循环查找
        If rf.Name = "Common" Then    '如果名字为Common就移动Common的引用
            Application.References.Remove rf    '移除
            Exit For    '退出循环
        End If
    Next
    strFileName = "C:\Windows\System32\MSCOMCTL.OCX"
    Set rf = Application.References.AddFromFile(strFileName)    '重新引用树控件


上述代码本人电脑测试成功,有的网友测试不能使用的可以使用下面改进版代码

    '用VBA代码自动引用树控件
    Dim REFE As References     '声明REFE为引用
    Dim strFileName As String   '声明strFileName为文本型变量
    Dim rf
    Set REFE = Application.References
    For Each rf In REFE    '在引用中循环查找
        If (rf.Name = "Common") And (rf.IsBroken) Then  '如果名字为Common就移动Common的引用
            Application.References.Remove rf    '移除
            strFileName = "C:\Windows\System32\MSCOMCTL.OCX"
            Set rf = Application.References.AddFromFile(strFileName)    '重新引用树控件
            Exit For    '退出循环
        End If
    Next

使用上述代码自动引用后,再打开数据库看一下引用是不是成功了,如下图:

用VBA代码自动引用树控件方法(图1)



标签: vba教程   access教程  
用户评论
加载中~