我需要创建一个新的Excel文件(从.csv文件)并导入两个宏文件:一个.bas和一个.cls。第一个导入有效,但是第二个导入没有导入ThisWorkbook,而是导入了一个新的类模块。
首先,我从现有的csv文件创建新的excel文件对象。
Dim oExcel
Set oExcel = CreateObject("Excel.Application")
Dim oBook
Set oBook = oExcel.Workbooks.Open(srcFile)
然后通过以下方式将.bas导入模块目录:
oBook.VBProject.VBComponents.Import scriptPath & "\" & "MyMacro" & ".bas"
当我对.cls文件进行相同的调用时,它将被导入到新的类模块目录中,而不是ThisWorkbook中。
oBook.VBProject.VBComponents.Import scriptPath & "\" & "RightClickEntry" & ".cls"
必须将其导入ThisWorkbook,因为它将添加一个条目到右键单击上下文菜单中,否则将不会显示。
我要寻找的东西似乎是不可能的,因为ThisWorkbook之类的自然界的结合。我将创建一个包含所有宏的模板Excel文件,在脚本中打开它,插入所有csv数据并将其另存为新的Excel文件。这种方法也是更好的方法,因为它只需要脚本下面一个附加文件(模板),而不需要两个导出的宏文件(将来还会更多)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句