.net 链接Excel表,取出数据

取出Excel中的数据,就像是取数据库数据一样简单

流程页一样,

首先,你要链接Excel表

filepath是Excel的名字;

 strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filepath + "; Extended Properties='Excel 8.0;HDR=YES;IMEX=1;'";

就像是数据库的(server=.;database=wer;pwd=sa;user =sd)一样

 

在然后就是取数据,

  OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();
            string strExcel = "";
            OleDbDataAdapter myCommand = null;
            DataSet ds = null;

            DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            string SheetName = dt.Rows[0]["TABLE_NAME"].ToString(); //这里就是取得表的名字了
            strExcel = "select * from [" + StringHelper.Filter(SheetName) + "]";
            myCommand = new OleDbDataAdapter(strExcel, strConn);
            ds = new DataSet();
            myCommand.Fill(ds, "table1");
            myCommand.Dispose();
            conn.Close();

取出数据放到一个DATATABLE中,在然后就不用多说了,

其中在你链接Excel中可能你会遇到问题,如下

1、说什么不是外部表预期格式

这个好解决,就是你的Excel哪个文件不是纯正的.xls文件。你只要在链接之前在另存为一下.xls文件格式就OK了

2、你的Microsoft Excel 是2003还是2005还是2008,等等,之类的,

那你就的注意,在链接之前strConn 链接Excel表格中注意写法

这个你就要看着写了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值