asp.net 数据集导出Excel方法

  public void CellToCell(DataSet ds)
        {
            #region 实例化所需对象
            // 实例化一个Excel文档对象
            Microsoft.Office.Interop.Excel.Application exapp = new Microsoft.Office.Interop.Excel.Application();
            // 设置可见
            // 如果为false的话,会造成看不到Excel文档的情况
            exapp.Visible = true;
            // 设置工作簿格式
            Microsoft.Office.Interop.Excel.Workbook myworkbook = exapp.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);
            // 实例化工作表集
            Microsoft.Office.Interop.Excel.Sheets mysheets = myworkbook.Worksheets;
            // 实例化工作表
            Microsoft.Office.Interop.Excel.Worksheet mysheet = (Microsoft.Office.Interop.Excel.Worksheet)mysheets.get_Item(1);
            #endregion

            #region 具体操作
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                for (int j = 0; j < ds.Tables[0].Columns.Count; j++)
                {
                    Console.Write("\t{0}\t|", j);
                    mysheet.Cells[i+1, j+1] = ds.Tables[0].Rows[i][j].ToString();
                }
                Console.WriteLine();
            }
            #endregion
            MessageBox.Show("导出完毕,请不要忘记保存导出成功的文件!");
            exapp.Caption = "Excel Demo 测试文件";
        }

注意:

  1. 引用的DLL版本与客户机安装的Office版本的匹配
  2. 「异常来自 HRESULT:0x800A03EC」这个可能是由于单元格索引的问题所引起的,Excel第一个单元格是1,1 而不是0,0

参考网站

  1. http://support.microsoft.com/kb/306023/zh-cn
  2. http://www.cnblogs.com/jinliangliu/archive/2006/08/18/480391.html
  3. http://www.cnblogs.com/mr_ke/archive/2010/03/02/1676210.html
  4. http://www.cnblogs.com/dahuzizyd/category/64340.html

人生的无奈那么多谁可以数得清?请告诉我!别回头走自己的路,就算有些事让人无助,至少我有一路吃苦的幸福!多年以后当我抬头望天空,湛蓝的色彩中依然有我沉郁多年的思绪!回归那一季那个曾叫‘山子’的男孩纯洁的微笑,然后宿命收拢指间,我们无处可逃
作者:Love Coding
出处:http://www.cnblogs.com/youshan/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/youshan/p/2423149.html