将“ThisWorkbook”宏导入到另一个工作簿
问题描述:
我需要VBA代码才能将过程导入另一个工作簿中的ThisWorkbook
作用域。将“ThisWorkbook”宏导入到另一个工作簿
我有代码将模块导入到另一个工作簿,但如何将此过程导入ThisWorkbook
范围而不是模块范围?
Sub TransferModule()
Const modul As String = "Misc"
Const tempfile As String = "/Users/Roman/Desktop/temp.bas"
Dim WBK As Workbook
On Error Resume Next
Set WBK = Workbooks.Add
ThisWorkbook.VBProject.VBComponents(modul).Export tempfile
WBK.VBProject.VBComponents.Import tempfile
Kill tempfile
End Sub
这需要模块Misc
从“此”工作簿,它出口到temp.bas
然后将其导入到另一个工作簿。不过,我需要它不导入到一个模块,但进入ThisWorkbook
范围。这是一个Private Sub Workbook_BeforeClose
事件。
答
,而不是创造新的工作簿:
Set WBK = Workbooks.Add
考虑使用喜欢的事:
Sub lkjhgf()
ThisWorkbook.SaveCopyAs ("C:\Users\Garys\Desktop\new.xlsm")
End Sub
新创建的工作簿,将所有原来有ThisWorkbook
代码。
(当然,你可能有更多的清理做删除的东西你不需要复制。)
编辑#1:
见Vogelaar的答案在这里:
谢谢你,但是我有宏希达复制从主簿,以newWorkbook在这newWorkbook我需要添加私人小组,以“ThisWorkb如果可能的话。这个PrivateSub我真的不需要在主要工作簿中。 –
@RomanŽydyk看到我的**编辑#1 **这是否有帮助? –
就是这样!完善!非常感谢你! –