生成带表头的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. BZOJ2435: [Noi2011]道路修建

    这种水题真是……没一次AC都不好意思见人啊 P.S. LINUX无限栈真是爽炸了… 我爱递归 /**************************************************** ...

  2. Sql Server总结

     主键 主键就是数据行的唯一标识.不会重复的列,才能当主键.一个表可以没有主键,但是会非常难以处理,因此没有特殊理由表都要设定主键.主键有两种选用策略:业务主键和逻辑主键. 业务主键是使用有业务意义的 ...

  3. php curl 分离header和body信息

    php中可以通过curl来模拟http请求,同时可以获取http response header和body,当然也设置参数可以只获取其中的某一个.当设置同时获取response header和body ...

  4. eq相等 ,ne、neq不相等 EL表达式

    eq相等,ne.neq不相等, gt大于, lt小于 gte.ge大于等于   lte.le 小于等于   not非   mod求模   is [not] div by是否能被某数整除   is [n ...

  5. 可灵活扩展的自定义Session状态存储驱动

    Session是互联网应用中非常重要的玩意儿,对于超过单台部署的站点集群,都会存在会话共享的需求.在web.config中,微软提供了sessionstate节点来定义不同的Session状态存储方式 ...

  6. 使用xshell链接本地虚拟机中的Linux

    昨天想在自己机器上安装一下Linux,并使用xshell访问,可是费了很长时间,在xshell端都提示“Could not connect to '192.168.54.100' (port 22): ...

  7. SPRING IN ACTION 第4版笔记-第十一章Persisting data with object-relational mapping-003编写JPA-based repository( @PersistenceUnit、 @PersistenceContext、PersistenceAnnotationBeanPostProcessor)

    一.注入EntityManagerFactory的方式 package com.habuma.spittr.persistence; import java.util.List; import jav ...

  8. MFC中Edit Control值的获取与赋值

    void CEditControlDlg::OnClickedButton() { // TODO: Add your control notification handler code here / ...

  9. Data Flow ->> Slow Changing Dimension

    这里简单讲下SCD 在讲之前贴上两个有用的链接地址.作者的两篇文件讲解了SCD是什么以及应用 http://www.cnblogs.com/biwork/p/3363749.html http://w ...

  10. Database: Normal form

    refer to wikipedia--- 1NF(first normal form): 1. There's no top-to-bottom ordering to the rows. 2. T ...