【问题标题】:Why does this give me error: 80040154为什么这给我错误:80040154
【发布时间】:2012-02-22 16:34:42
【问题描述】:

我正在使用此代码读取 Excel 电子表格:

using Excel = Microsoft.Office.Interop.Excel; 

namespace myProject
{
  public class uploadfile
  {
    public void ReadFile(string file, string companycode)
    {
        Excel.Application xlApp;
        Excel.Workbook xlWorkBook;
        Excel.Worksheet xlWorkSheet;
        Excel.Range range;

        string str;
        int rCnt = 0;
        int cCnt = 0;

        xlApp = new Excel.Application(); //<==Crashes right here

        xlWorkBook = xlApp.Workbooks.Open(file, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
        xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
       //Code eliminated for brevity
     }
  }
}

每次运行此代码时,我都会收到错误 0x80040154,“未注册类”。我已尝试针对 X86 并在我的 PC 上重新安装 Office。我已经搜索了互联网,但在大多数来源中,它安装在某人的机器上后出现问题,但在 VS2010 中发生在我身上。

【问题讨论】:

  • 您是否为您的 office 版本安装了 Microsoft Office XXXX Primary Interop Assemblies?
  • @pistipanko 我已经安装了微星
  • 您安装了哪个版本的 Excel(以及您使用的是哪个版本的互操作...也就是说,您在“添加引用”时选择了什么)?
  • @SwDevMan81 家庭办公室和学生 2010 和 14.0.0.0
  • 这可能是 Office PIA 的版本冲突和您项目中对 Office Interop 的引用。

标签: c# excel


【解决方案1】:

我没有正确版本的 Office。改用 CSV 而不是 xlsx。

【讨论】:

    猜你喜欢
    • 2011-09-07
    • 1970-01-01
    • 2022-08-12
    • 1970-01-01
    • 2012-04-25
    • 2015-06-25
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多