生成带表头的Excel文件,格式如下显示。

当然更复杂的一些也可以通过 合并单元格的方法 public void Merge(int firstRow, int firstColumn, int totalRows, int totalColumns)来实现。

下载链接:http://download.csdn.net/detail/nxgliming/6668471

实现方式:

1. 首先,需要添加对"Aspose.Cells.dll"的引用。

2. 实现代码如下:

 //新建工作簿
Workbook workbook = new Workbook(); //工作簿
Worksheet sheet = workbook.Worksheets[]; //工作表
Cells cells = sheet.Cells;//单元格 Style style = workbook.Styles[workbook.Styles.Add()];//新增样式 #region 表头
//标题
style.HorizontalAlignment = TextAlignmentType.Center;//文字居中
style.Font.Name = "宋体";//文字字体
style.Font.Size = ;//文字大小
style.Font.IsBold = true;//粗体 cells.Merge(, , , ); //合并单元格
cells[, ].PutValue("标准化工作意见建议汇总表"); //填写内容
cells[, ].SetStyle(style); //给单元格关联样式
cells.SetRowHeight(, ); //设置行高 //发布时间
style.HorizontalAlignment = TextAlignmentType.Left;
style.Font.Size = ;
style.Font.IsBold = false;
cells.Merge(, , , );
cells[, ].PutValue(String.Format("发布起止时间:{0}至{1}",DateTime.Now.AddDays(-).ToString("yyyy年MM月dd日"),DateTime.Now.ToString("yyyy年MM月dd日")));
cells[, ].SetStyle(style);
cells.SetRowHeight(, ); //统计时间
style.HorizontalAlignment = TextAlignmentType.Right;
style.Font.Size = ;
style.Font.IsBold = false;
cells.Merge(, , , );
cells[, ].PutValue(String.Format("统计时间:{0}", DateTime.Now.ToString("yyyy年MM月dd日")));
cells[, ].SetStyle(style);
cells.SetRowHeight(, );
#endregion #region 表格 #region 表格标题行
//序号
style.HorizontalAlignment = TextAlignmentType.Center;
cells[, ].PutValue("序号");
cells[, ].SetStyle(style);
cells.SetRowHeight(, );
cells.SetColumnWidthPixel(, ); //建议时间
cells[, ].PutValue("建议时间");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //建议部门
cells[, ].PutValue("建议部门");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //建 议 人
cells[, ].PutValue("建 议 人");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //类 别
cells[, ].PutValue("类 别");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //业务种类
cells[, ].PutValue("业务种类");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //标准名称
cells[, ].PutValue("标准名称");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //标准章、条编号
cells[, ].PutValue("标准章、条编号");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //意见建议
cells[, ].PutValue("意见建议");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //处理部门
cells[, ].PutValue("处理部门");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //处理进度
cells[, ].PutValue("处理进度");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); //备注
cells[, ].PutValue("备注");
cells[, ].SetStyle(style);
cells.SetColumnWidthPixel(, ); #endregion #endregion System.IO.MemoryStream ms = workbook.SaveToStream();//生成数据流
byte[] bt = ms.ToArray(); workbook.Save(@"E:\test.xls");//保存到硬盘
}

3. 生成好的Excel可以保存到磁盘,也可以在web页面上通过流的方式来下载。

  //下载
System.IO.MemoryStream ms = workbook.SaveToStream();//生成数据流
byte[] bt = ms.ToArray(); string fileName = "标准化工作意见建议汇总表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";//客户端保存的文件名
//以字符流的形式下载文件 Response.ContentType = "application/vnd.ms-excel"; //通知浏览器下载文件而不是打开
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.BinaryWrite(bt); Response.Flush();
Response.End();

使用Aspose.Cells组件生成Excel文件的更多相关文章

  1. C# Aspose.Cells方式导入Excel文件

    读取Excel 类 我返回的是DataTable 类型 也可以返回DataSet类型 public class XlsFileHelper { public DataTable ImportExcel ...

  2. 【转】 (C#)利用Aspose.Cells组件导入导出excel文件

    Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...

  3. (C#)利用Aspose.Cells组件导入导出excel文件

    Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...

  4. Aspose.Cell和NPOI生成Excel文件

    1.使用Aspose.Cell生成Excel文件,Aspose.Cell是.NET组件控件,不依赖COM组件 1首先一点需要使用新建好的空Excel文件做模板,否则容易产生一个多出的警告Sheet 1 ...

  5. NPOI、MyXls、Aspose.Cells 导入导出Excel(转)

    Excel导入及导出问题产生: 从接触.net到现在一直在维护一个DataTable导s出到Excel的类,时不时还会维护一个导入类.以下是时不时就会出现的问题: 导出问题: 如果是asp.net,你 ...

  6. Aspose.Cells 导入导出EXCEL(转)

    Aspose.Cells 导入导出EXCEL      修改样式        Workbook workbook = new Workbook(); //工作簿          Worksheet ...

  7. 使用Microsoft.Office.Interop.Excel.dll 文件来生成excel 文件

    日常工作中经常需要将后台的数据导出成excel  格式,这里通过调用微软提供的类库来生成excel 文件. 具体是引用 了Microsoft.Office.Interop.Excel.dll 类库文件 ...

  8. 利用kettle组件导入excel文件到数据库

    利用kettle组件导入excel文件到数据库 1.     实现目标 把excel文件内容导入到目标表中:然后用java调用kettle的转换.excel文件的内容仅仅有两列,示比例如以下: wat ...

  9. 如何生成excel文件作为图像识别结果

    如何生成excel文件作为图像识别结果 在进行大规模图像处理的时候,如果能够以表格的形式生成结果文件,将非常的直观.这个时候,选择excel作为结果输出文件,将是合适的. 查询相关资料,有很多关于ex ...

随机推荐

  1. ZOJ3229 Shoot the Bullet(有源汇的上下界最大流)

    #pragma warning(disable:4996) #include <iostream> #include <cstring> #include <string ...

  2. MySQL数据库优化总结

    对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要.一般来说,要保证数据库的效率,要做好以下四个方面的工作:数 据库设计.sql语句优化.数据库参数配置.恰当的硬件资 ...

  3. 如何使用JMeter来实现更大批量的并发的解决方案(即如何设置controller和Agent)

    http://www.testwo.com/blog/6373 近期在用JMeter进行负载测试的 时候,发现使用单台机器模拟测试超过比如500个进程的并发就有些力不从心或者说不能如实的反应实际情况, ...

  4. asp.net中Literal与label的区别

    Literal 控件表示用于向页面添加内容的几个选项之一.对于静态内容,无需使用容器,可以将标记作为 HTML 直接添加到页面中.但是,如果要动态添加内容,则必须将内容添加到容器中.典型的容器有 La ...

  5. 李洪强漫谈iOS开发[C语言-042]-简单计算器

    李洪强漫谈iOS开发[C语言-042]-简单计算器

  6. 根据ip查询地区,经纬度等-geoip2

    这项工作难度主要在数据上,数据越准确越有利. 1. 下载数据文件: http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.m ...

  7. QT静态编译

    Qt静态编译(链接)和动态编译区别 Qt的静态编译译(其实应该叫链接,不是编译),将各模块编译成静态库,这样在编译自己写的Qt程序时,会将这些静态库编译(链接)到你的EXE文件中去的.Qt的动态编译, ...

  8. Bridging signals---hdu1950(最长上升子序列复杂度n*log(n) )

     题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1950 一直只知道有除n*n的算法之外的求LIS,但是没学过,也没见过,今天终于学了一下,dp[i]表 ...

  9. 关闭Centos写磁盘功能

    一个Linux文件默认有3个时间.atime:对此文件的访问时间. ctime:此文件inode发生变化的时间. mtime:此文件的修改时间. 如果有多个小文件(比如Web服务器的页面上有多个小图片 ...

  10. Oracle Demo ->> CREATE TABLE

    Demo One CREATE TABLE employees_demo ( employee_id ) , first_name ) , last_name ) CONSTRAINT emp_las ...