使用 C# 将 VBA 代码插入到现有的 xlsm 文件中

问题描述

几天以来,我一直在尝试为这个问题寻找解决方案,但没有找到任何解决办法,因此如果有人能指导我解决这个问题,我将不胜感激。我有一段使用 Microsoft.Office.Interop.Excel 命名空间的代码 但我必须使用 EPplus lib 转换此代码,因为在我们的服务器上我们只有此库可用 这是代码,它将 VBA 代码从字符串添加到特定工作表 (2)

        string VBCode = VBACode.GetVbCode();//vba code
      
        Microsoft.Vbe.Interop.VBProject Project = Workbook.VBProject;
        Microsoft.Vbe.Interop.VBComponent Module = Workbook.VBProject.VBComponents.Item(2);//sheet2
       
        Microsoft.Vbe.Interop.codemodule Code = Module.codemodule;
        Code.AddFromString(VBCode);

我试过这段代码,但它把 vba 代码添加到了 ThisWorkBook 模块而不是工作表 提前致谢 //openxml EPPlus 使用 (ExcelPackage pck = new ExcelPackage(new FileInfo(fileName),true)) {

            pck.Workbook.CreateVBAProject();
            pck.Workbook.Worksheets[2].Workbook.codemodule.Code = VBACode.GetVbCode();

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...