了解COM异常

时间:2013-05-22 18:44:57

标签: c# office-interop

嘿,我得到以下异常: 由于以下错误,检索具有CLSID {00020819-0000-0000-C000-000000000046}的组件的COM类工厂失败:80040154。 Office 2010。

我已经阅读了一堆结果,典型的解决方案是从AnyCPU到X86的更改调试。(我不想这样做,因为它是一个大项目,但它无论如何都不起作用)。我也想了解这个例外。

我只是尝试添加一个新的工作簿工作表并用一些数据填充它,但由于上述异常,它在创建工作簿时出错。

using excel = Microsoft.Office.Interop.Excel;

public static void ExcelFunction()
    {
        excel.Workbook wb_XLS = new excel.Workbook();
        excel.Worksheet ws_XLS = new excel.Worksheet();
        ws_XLS = (excel.Worksheet)wb_XLS.ActiveSheet;
        int x, y,count;
        count = x = y = 0;
        while (x < 100)
        {
            while (y < 100)
            {
                ws_XLS.Cells[x, y] = count.ToString();
                count++;
                y++;
            }
            x++;
        }
    }

1 个答案:

答案 0 :(得分:0)

首先应该创建excel应用程序,然后通过调用工作簿集合上的Add而不是在excel.workbook上调用new来创建新工作簿吗?

 Excel.Application app = new ... ;
 var workbook = app.Workbooks.Add();