繁体   English   中英

VBA复制模块从一个工作簿复制到另一个

[英]VBA Copy Module from one Workbook to another

您好,感谢您阅读我的问题。 我正在尝试创建一个自动脚本,该脚本将模块从一个工作簿导出到另一个新工作簿

            ThisWorkbook.Activate
        ActiveWorkbook.VBProject.VBComponents("Coexis_BitAND").Export ("c:\Coexis_BitAND.bas")
        wbNew.Activate
        ActiveWorkbook.VBProject.VBComponents.Import ("c:\Coexis_BitAND.bas")

但是,当我在步骤中单击“ ActiveWorkbook.VBProject.VBComponents(“ Coexis_BitAND”)。Export(“ c:\\ Coexis_BitAND.bas”)“时单步执行代码时,它将跳转到我的OnError Goto之一。

我已经读过有可能做到这一点,但还没有找到可行的方法,我敢肯定这必须是简单的事情,例如我对VBA缺乏经验

假设两个工作簿都同时打开,请尝试一下

Dim comp as VBComponent
Set comp = ThisWorkbook.VBProject.VBComponents("Coexis_BitAND")
Workbooks("otherWorkbookName").VBProject.VBComponents.add comp

有时,您在编写VBIDE时无法单步执行代码。 即使您的代码是100%,它也会在步骤上出错。

将Stop放置在bugOut之外,然后让它运行到Stop。 如果您的代码仍然遇到错误。 您可以针对Chips函数验证代码:

根据原始答案,这就是我发现的工作,感谢所有帮助。

        If DUTs = 0 Then
        '----- WARNING VBA Macro Settings must Trust access to VBA Project Object Models.
        '----- Antivirus may detect this action and delete this file!
        filePath = ActiveWorkbook.Path
        ThisWorkbook.Activate
        ActiveWorkbook.VBProject.VBComponents("Coexis_BitAND").Export (filePath + "\Coexis_BitAND.bas")
        wbNew.Activate
        ActiveWorkbook.VBProject.VBComponents.Import (filePath + "\Coexis_BitAND.bas")

    End If

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM