使用C#及Excel进行报表开发.doc

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用C#及Excel进行报表开发

使用C#和Excel进行报表开发(1) ???2007年11月20日 ???社区交流 关键字: Applet ORM GZipStream Tuple yield csdn 内容摘要:下面是一个简单的例子,打开一个定义好的Excel文件,这个文件是作为报表的模板,然后向模板的指定格子里填充数据,形成一个报表,在web方式下可以按照指定的命名方式在服务器上生成一个excel文件,之后传送到客户端,由客户端启动excel进行打印。   目前的商业工具如水晶报表,ActiveReport等,都提供了灵活,强大的功能,但是对于比较特殊化的表格,特别是国内的一些应用,都是一个个的格子组成的,这样要是用线来一根根画就比较麻烦,但是这类工具还都不提供表格化的报表布局定义方式。一个很好的选择是VS2005的客户端报表(RDLC),但是在某几个方面还是不够灵活,例如,灵活性有限制,要想自己编码实现一些复杂逻辑还是有困难;要VS2005,对于一些还在使用VS2003的项目就只有眼馋的份了。用Excel来实现,优点在于页面布局设计灵活,同时使用代码来操作数据要更灵活,更精确。   下面是一个简单的例子,打开一个定义好的Excel文件,这个文件是作为报表的模板,然后向模板的指定格子里填充数据,形成一个报表,在web方式下可以按照指定的命名方式在服务器上生成一个excel文件,之后传送到客户端,由客户端启动excel进行打印。   Excel.Application m_objExcel = null;   Excel._Workbook m_objBook = null;   Excel.Sheets m_objSheets = null;   Excel._Worksheet m_objSheet = null;   Excel.Range m_objRange = null;   object m_objOpt = System.Reflection.Missing.Value;   try   {   m_objExcel = new Excel.Application();   m_objBook = m_objExcel.Workbooks.Open(z:Book1.xls, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt);   m_objSheets = (Excel.Sheets)m_objBook.Worksheets;   m_objSheet = (Excel._Worksheet)(m_objSheets.get_Item(1));   string[] info = new string[5] { Cure, 26, , 汉, 按时 ?放奥斯丁奥斯丁非是否奥斯丁非 };   m_objRange = m_objSheet.get_Range(B1, m_objOpt);   m_objRange.Value = info[0];   m_objRange = m_objSheet.get_Range(E1, m_objOpt);   m_objRange.Value = info[1];   m_objRange = m_objSheet.get_Range(B2, m_objOpt);   m_objRange.Value = info[2];   m_objRange = m_objSheet.get_Range(E2, m_objOpt);   m_objRange.Value = info[3];   m_objRange = m_objSheet.get_Range(A3, m_objOpt);   m_objRange.Value = info[4];   m_objExcel.DisplayAlerts = false;   m_objBook.SaveAs(z:Book2.xls, m_objOpt, m_objOpt,   m_objOpt, m_objOpt, m_objOpt, Excel.XlSaveAsAccessMode.xlNoChange,   m_objOpt, m_objOpt, m_objOpt, m_objOpt);   }   catch (Exception ex)   {   MessageBox.Show(ex.Message);   }   finally   {   m_objBook.Close(m_objOpt, m_objOpt, m_objOpt);   m_objExce

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档