【问题标题】:Loop worksheets in excel using c#使用c#在excel中循环工作表
【发布时间】:2015-03-25 19:20:43
【问题描述】:

我想在一个 excel 中循环所有工作表,并需要将其插入到一个 sql server 表中。

我已经完成了一个编码部分,将单个工作表 excel 插入到 sql server 表中。

如果 excel 包含更多工作表,我想循环这些工作表并需要将其插入到 sql server 表中。

我为循环目的编写了以下代码,但它给出了以下错误;

"ComException 被捕获" "正在检索 COM 类工厂 由于 CLSID {00024500-0000-0000-C000-000000000046} 的组件失败 到以下错误:80040154 类未注册(异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))。”

这是循环的代码:

string path = @"D:/Projects/sample.xls";
string strConnection = ConfigurationManager.ConnectionStrings["Source"].ToString();
string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=1\";";
Excel.Application ExcelApp = new Excel.Application();
var Wbook = ExcelApp.Workbooks.Open(path);
foreach (var sheet in Wbook.Worksheets)
                {
                    OleDbCommand cmd = new OleDbCommand("Select [Name], [City], [Address], [Designation] from [" + sheet + "$]", excelConnection);
                    excelConnection.Open();
                    OleDbDataReader dReader;
                    dReader = cmd.ExecuteReader();
                    SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection);
                    //Give your Destination table name
                    sqlBulk.DestinationTableName = "temp1";
                    sqlBulk.WriteToServer(dReader);
                    excelConnection.Close();
                }

但是在执行该行时

var Wbook = ExcelApp.Workbooks.Open(path);

出现上述错误。请给我建议。

【问题讨论】:

  • 那台机器上是否安装了 Excel?
  • 没有。我还没有安装 MS Office。我已将ods格式文件转换为excel文件。
  • 这不是我的问题。
  • 没有。我还没有安装
  • 在我的办公系统中。我们只使用openoffice。没有 MS Office。

标签: c# asp.net excel loops oledb


【解决方案1】:

您需要安装 Microsoft Office 才能像您一样使用互操作程序集。

您必须:

  • 安装 Excel;
  • 或使用第三方组件,例如EPPlus

【讨论】:

  • 是的帕特里克..我没有得到想要的解决方案。我尝试了 EPPlus,但出现错误..
  • 我现在正在做的是,在文本框中用逗号输入所有工作表名称,然后放入列表中。单独循环并传递工作表名称并将值存储到数据库中。
猜你喜欢
  • 1970-01-01
  • 2016-11-25
  • 1970-01-01
  • 2020-04-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-14
  • 1970-01-01
相关资源
最近更新 更多