2

我已经在 excel 表中的 VBA 中编写了一些代码,它将文本文件转换为 excel 表并对数据执行一些验证以过​​滤正确的数据和错误数据并将其分离到正确的文本文件和错误文本文件中。打开 excel 时运行整个逻辑。打开这个excel的逻辑是用c#写在我的.net应用程序中的。

代码是:

FileInfo fi = new FileInfo("C:\automate_load.xlsm");

if (fi.Exists)
{
    Excel.Application excelapp = new Excel.Application();
    excelapp.Visible = true;
    Excel.Workbook wb = excelapp.Workbooks.Open("C:\automate_load.xlsm", 0, 
        false, 5, "", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);

当我手动打开automate_load.xlsm 文件时,整个VBA 代码运行正常,但是当我的c# 代码打开该文件时没有任何反应。

我认为当文件自动打开时,micros 会被禁用。请帮我解决一些问题。提前致谢....

4

1 回答 1

0

如果您要sub在打开的xlsm文件中运行存储,请选中该框(快捷方式:ALT + T + M + S):

办公室 2010 办公室2003

我不太确定,但认为它可能会有所帮助。

于 2012-05-24T14:03:08.220 回答