C# 读取excel

原创 2017年01月03日 17:10:23
public  DataSet GetWorkbook(string filename)
        {
            DataSet ds = new DataSet();
            Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();    //初始化Excel对象
            app.Visible = false;
            app.DisplayAlerts = false;
            object missing = System.Reflection.Missing.Value;
            Microsoft.Office.Interop.Excel.Workbook wb;
            try
            {
                wb = app.Workbooks.Open(filename, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                throw;
            }
            foreach (Microsoft.Office.Interop.Excel.Worksheet ws in wb.Sheets)
            {
                ds.Tables.Add(GetWorksheet(ws));
            }
            app.Workbooks.Close();
            app.Quit();
            return ds;
        }
        public  DataTable GetWorksheet(Microsoft.Office.Interop.Excel.Worksheet ws)
        {
            DataTable dt = new DataTable();
            dt.TableName = ws.Name;

            int row = ws.UsedRange.Rows.Count + 1;
            int col = ws.UsedRange.Columns.Count + 1;

            for (int c = 1; c < col; c++)
            {
                dt.Columns.Add("F" + c);
            }

            for (int r = 1; r < row; r++)
            {
                DataRow newRow = dt.NewRow();
                for (int c = 1; c < col; c++)
                {
                    newRow[c - 1] = ((Microsoft.Office.Interop.Excel.Range)ws.Cells[r, c]).Value2;  //问题是不是出在这里,请问怎么解决呢
                }
                dt.Rows.Add(newRow);
            }

            return dt;
        }


版权声明:本文为博主原创文章,未经博主允许不得转载。

C# 读取Excel文件的几种方法【搜集整理】

片段 1 using System.Data.OleDb; ... static void Main() { Application.Run(new Form1()); } private voi...
  • wuyingzhiyi
  • wuyingzhiyi
  • 2016年09月26日 11:02
  • 4782

C# 读取Excel文件代码

片段 1 using System.Data.OleDb; ... static void Main() { Application.Run(new Form1()); } priva...
  • guobing965816
  • guobing965816
  • 2014年04月23日 16:53
  • 2252

C# 读取EXCEL文件的三种经典方法

1.方法一:采用OleDB读取EXCEL文件:  把EXCEL文件当做一个数据源来进行数据的读取操作,实例如下:  ? 1 2 3 4 5...
  • GoodShot
  • GoodShot
  • 2015年09月28日 21:12
  • 3647

C#读取excel数据

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T...
  • weixin_36602742
  • weixin_36602742
  • 2017年03月10日 15:22
  • 867

C#读取Excel的五种方式体会(三)

上一篇文章中,采用微软的sdk,来操作,总是感觉用别人的工具要受制于人,既然我们知道了...
  • dapengbusi
  • dapengbusi
  • 2014年07月25日 15:35
  • 12595

C#读取Excel 几种方法的体会

(1) OleDb: 用这种方法读取Excel速度还是非常的快的,但这种方式读取数据的时候不太灵活,不过可以在 DataTable 中对数据进行一些删减修改 这种方式将Excel作为一个数据源,直接...
  • aabbjj
  • aabbjj
  • 2014年09月23日 16:23
  • 1122

c#读取excel中的数据到sql server,包括c#读取excel的数据

1.采用excel的com组件接口. 添加引用,在vs2015中添加引用,com组件中找到excel的接口. 这样添加不会与系统中excel版本冲突,如果下载Microsoft.Office.Inte...
  • b5694708
  • b5694708
  • 2016年08月12日 21:23
  • 774

C#读取Excel五种方式体会(二)

上一篇文章中,我们找到了三种处理的方式,分别对其优缺点进行了
  • dapengbusi
  • dapengbusi
  • 2014年07月25日 15:17
  • 47856

C# 读取EXCEL文件的三种经典方法

1.方法一:采用OleDB读取EXCEL文件:  把EXCEL文件当做一个数据源来进行数据的读取操作,实例如下:  public DataSet ExcelToDS(string Path) { ...
  • fuzhenglai
  • fuzhenglai
  • 2016年11月14日 13:45
  • 5624

C#操作Excel文件(读取Excel,写入Excel)

C#操作Excel文件(读取Excel,写入Excel)        2009-01-09 10:25157690人阅读评论(59)收藏举报 excelc#datasetexceptions...
  • kirawoo
  • kirawoo
  • 2015年06月17日 20:30
  • 4917
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 读取excel
举报原因:
原因补充:

(最多只允许输入30个字)