c# - 无法将类型 'object' 隐式转换为 'Microsoft.Office.Interop.Excel.Worksheet' 。存在显式转换(您是否缺少转换?)

标签 c# .net excel interop excel-interop

我在这里打开 excel 并写入 excel 工作表。我正在将我的 Windows 应用程序更改为 asp 网站并看到此错误。我已经添加了所有引用资料和库。不知道我在这里错过了什么。

出现如下所述的错误。请帮助我。

    Excel.Application excel = new Excel.Application();
    excel.Visible = false; // to hide the processing 
    Excel.Workbook wb = excel.Workbooks.Add();
    Excel.Worksheet sh = wb.Sheets.Add(); // Error at wb


    sh.Name = "Links";

    for (int i = 1; i < list.Count; i++)
    {
        sh.Cells[i.ToString(), "A"].Value2 = list[i]; //Error at .Value2

    }

最佳答案

您必须通过提供 WorkSheet 名称来创建一个包含 Sheets 数组的新工作表。 也请转换新创建的 WorkSheet

替换这个:

Excel.Worksheet sh = wb.Sheets.Add();

跟随

 Excel.Worksheet sh  = (Microsoft.Office.Interop.Excel.Worksheet)wb.Sheets["Sheet1"];

关于c# - 无法将类型 'object' 隐式转换为 'Microsoft.Office.Interop.Excel.Worksheet' 。存在显式转换(您是否缺少转换?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19888326/

相关文章:

c# - 如何使用 MSTest 模拟对象?

c# - 验证一个值是否为 C# 中的勾号

vba - Excel VBA - 从第 2 行向下清除列内容

c# - 您尝试打开的文件 'file.xls' 的格式与文件扩展名指定的格式不同

c# - 在什么情况下,异步方法将在与调用等待之前使用的线程不同的线程中继续?

c# - WPF 数据网格单元格为空

c# - 为什么转换数组(向量)这么慢?

javascript - 动态更改某些数据绑定(bind)数据列表项的光标样式?

c# - 私有(private)类级变量是否继承?

excel - 代码中引用的 Excel 工作簿在任务栏中无处可见