小编Evg*_*aph的帖子

如何通过C#代码从文本文件中将vba宏加载到excel文件?

我的C#代码必须创建一个包含两个工作表的Excel文件,并在那里输出一些数据.除了数据列之外,还必须使用VBA宏启用Sheet 1,这将允许用户在单击特定单元格时使用提供的数据执行某些数学计算.此VBA宏存储在文本文件中,如C:\VBA_MACROS\VBA1.txt.

现在我可以手动完成,即

  1. C#代码创建一个Excel文件并用数据填充它.
  2. 我右键单击Sheet1并选择"查看代码"选项.
  3. 我单击Microsoft Visual Basic for Applications菜单中的"插入"按钮并加载该文件C:\VBA_MACROS\VBA1.txt.
  4. 我关闭了VBA代码窗口.

问题:步骤2 - 4可以通过C#代码以及步骤1自动执行吗?在这种情况下,用户不必手动执行它们,这对她来说更舒适.

确切地说,这就是应用程序的创建方式:

Excel.Application application = new Excel.Application();
Excel.Workbook workbook = application.Workbooks.Add();
Excel.Worksheet worksheet = workbook.Sheets[1];
Excel.Worksheet worksheet2 = workbook.Sheets[2];

// output data to the worksheets
DataTable2Worksheet(tableMain, worksheet, verSize);
DataTable2Worksheet(tableExtra, worksheet2, 0);

// output workbook to the file
string fileDir = @"D:\MyTests\ExcelTests\";
Output2File(fileDir, workbook);
Run Code Online (Sandbox Code Playgroud)

DataTable2Worksheet和Output2File函数是相当简单的,但如何worksheet = workbook.Sheets[1]使用AddFromFile方法附加文本文件的内容?

c# excel vba

4
推荐指数
1
解决办法
965
查看次数

标签 统计

c# ×1

excel ×1

vba ×1