将PERSONAL.XLSB中的工作表代码模块复制到新工作簿

我正在编写试图将代码模块和用户表单从PERSONAL.XLSB复制到新工作簿的代码。 该代码应将以下内容从PERSONAL.XLSB!Sheet1复制到新的工作簿Book1.xlsx!Sheet1。 代码运行没有错误,但代码不会复制。 Book1.xlsx!Sheet1仍然是空的。 任何帮助是极大的赞赏。

Private Sub Workbook_FollowHyperlink(ByVal Target As Hyperlink) If Target.TextToDisplay = "Click to Run Hello World" Then Run HelloWorld End If End Sub 

PERSONAL.XLSB!Module1中的macros复制代码:

 Sub CodeCopy() 'Macro to copy the macro module from PERSONAL.XLBS!Sheet1 to Test.xls!Sheet1. Dim i As Integer Dim NewSh As Worksheet Dim SrcCmod As VBIDE.CodeModule Dim DstCmod As VBIDE.CodeModule Set SrcCmod = Workbooks("PERSONAL.XLSB").VBProject.VBComponents("Sheet1").CodeModule Set DstCmod = Workbooks("Book1.xlsx").VBProject.VBComponents("Sheet1").CodeModule For i = 1 To SrcCmod.CountOfLines DstCmod.InsertLines i, SrcCmod.Lines(i, 1) Next i End Sub 

想到一个解决方法 – 只是复制PERSONAL.XLSB!Sheet1到新的工作簿。 包含的代码也将复制。

 Sub CopySheetCode() Dim CurrentSheet As Worksheet Windows("PERSONAL.XLSB").Activate Worksheets("Sheet1").Copy Before:=Workbooks("Book1.xlsx").Sheets(1) End Sub