DataTable 导到Excel
/// <summary>/// 将DataTalbe导出到Excel中/// </summary>/// <param name="dt"></param>/// <param name="ProjectName">生成的Excel的Sheet的名字</param>/// <param name="filePath">保存的路径</param>public static void Export(System.Data.DataTable dt, string filePath){ if (dt == null) { throw new Exception("数据表中无数据"); } int eRowIndex = 1; int eColIndex = 1; int cols = dt.Columns.Count; int rows = dt.Rows.Count; Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass(); Microsoft.Office.Interop.Excel.Workbook xlBook = xlApp.Workbooks.Add(true); try { //列名的处理 for (int i = 0; i < cols; i++) { xlApp.Cells[eRowIndex, eColIndex] = dt.Columns[i].ColumnName; eColIndex++; } //列名加粗显示 xlApp.get_Range(xlApp.Cells[eRowIndex, 1], xlApp.Cells[eRowIndex, cols]).Font.Bold = true; xlApp.get_Range(xlApp.Cells[eRowIndex, 1], xlApp.Cells[rows + 1, cols]).Font.Name = "Arial"; xlApp.get_Range(xlApp.Cells[eRowIndex, 1], xlApp.Cells[rows + 1, cols]).Font.Size = "10"; eRowIndex++; for (int i = 0; i < rows; i++) { eColIndex = 1; for (int j = 0; j < cols; j++) { xlApp.Cells[eRowIndex, eColIndex] = dt.Rows[i][j].ToString(); eColIndex++; } eRowIndex++; } //控制单元格中的内容。 xlApp.Cells.EntireColumn.AutoFit(); xlApp.DisplayAlerts = false; xlBook.SaveCopyAs(filePath); xlApp.Workbooks.Close(); } catch { throw; } finally { xlApp.Quit(); //杀掉Excel进程。 GC.Collect(); }} |
注意:using Microsoft.Office.Interop.Excel; VS2010 下 添加引用 COM选项中找Microsoft Office 12.0 Object Library Microsoft Excel 14.0 Object Library
引用目录下出现Microsoft.Office.Core Microsoft.Office.Interop.Excel
如果代码中出现 Excel.ApplicationClass()无法互嵌套操作类型 请改用适用的接口
把引用的Microsoft.Office.Interop.Excel 右击属性 嵌入互操作类型改为false即可
DataTable 导到Excel的更多相关文章
- DataTable导出到Excel
简单的导出到Excel中: 代码如下: using System; using System.Collections.Generic; using System.Data; using System. ...
- 带复杂表头合并单元格的HtmlTable转换成DataTable并导出Excel
步骤: 一.前台JS取HtmlTable数据,根据设定的分隔符把数据拼接起来 <!--导出Excel--> <script type="text/javascript&qu ...
- [转].net 使用NPOI或MyXls把DataTable导出到Excel
本文转自:http://www.cnblogs.com/yongfa365/archive/2010/05/10/NPOI-MyXls-DataTable-To-Excel-From-Excel.ht ...
- DataTable导出到Excel(.NET 4.0)
最近在论坛里又看到很多关于DataTable(DataSet)导入Excel的帖子,我也温故知新一下,用VS2010重新整理了一个Sample.这个问题简化一下就是内存数据到文件,也就是遍历赋值,只不 ...
- DataTable 导出到 Excel 类
底层类: #region DataTable 导出到 Excel /// <summary> /// DataTable 导出到 Excel /// </summary> // ...
- sqlserver将数据库的数据导成excel文档方法
sqlserver将数据库的数据导成excel文档方法 最近公司需要下载uniport的数据跟之前的数据进行对比,所以避免不了需要将数据库的数据导出来,把SQLServer表中的数据导出为Excel文 ...
- c# DataTable导出为excel
/// <summary> /// 将DataTable导出为Excel文件(.xls) /// </summary> /// <param name="dt& ...
- 把 DataTable 输出到 excel 文件
''' <summary> ''' 把 DataTable 输出到 excel 文件 ''' </summary> ''' <param name="dt_da ...
- C# datatable 导出到Excel
datatable导出到Excel /// <summary> /// 将DataTable导出为Excel文件(.xls) /// </summary> /// <pa ...
随机推荐
- Android项目:proguard混淆第三方jar.
1.Gson混淆 ## ---------------------------------- ## ########## Gson混淆 ########## ## ------------- ...
- [已解决]Eclipse 插件Maven在使用 add dependency,找不到包,解决办法
以Eclipse版本[Version: Luna Release (4.4.0),]为例, 依次打开:Window >show view > other > Maven Reposi ...
- 【转】本地存储-localStroage/sessionStorage存储
原文地址:[js学习笔记-103]----本地存储-localStroage/sessionStorage存储 客户端存储 l WEB存储 web存储最初作为html5的一部分被定义成API形式,但 ...
- python(三)set集合
set集合的特点是无序.不重复序列 创建集合: 1 2 3 4 5 6 7 8 9 10 11 12 13 a.s1 = {11,22} b.s2 = set() c.s3 = set([11,22, ...
- [转]unicode,ansi,utf-8,unicode big endian的故事
unicode,ansi,utf-8,unicode big endian的故事很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的 ...
- InfoSet
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Linux下环境变量设置
分类 Linux下的环境变量按生存周期来划分,可以划分为两种: 1)永久的:需要修改配置文件, 变量永久生效 2)临时的:直接在终端使用export命令声明即可,但是关闭shell后失效. 设置方法 ...
- 发布网站详细步骤(.Net)
(i)打开需要发布的网站 右键需要发布的项目 点击下拉框新建配置文件,输入配置文件名称,点击确定,下一步 发布方法选文件系统,目标位置:项目的根目录 配置选Release 点击发布 (ii) 打开ii ...
- 浅析C#深拷贝与浅拷贝
1.深拷贝与浅拷贝 拷贝即是通常所说的复制(Copy)或克隆(Clone),对象的拷贝也就是从现有对象复制一个“一模一样”的新对象出来.虽然都是复制对象,但是不同的 复制方法,复制出来的新对象却并 ...
- sublime text3 快捷方式汇总
sublime text. 用过的都给赞, 哈哈-- 下面是快捷方式汇总啦: 选择类: Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次 ...