在项目开发过程中,涉及到报表时经常会遇到向某些Excel模版中填充数据,然后生成报表,但如何才能通过简单的代码就将值填入Excel表格呢?下面我就来和大家分享一个简单准确的给Excel表格赋值的示例。

具体实现步骤如下:

第一步:请先安装PageOffice的服务器端的安装程序,之后在你的网站中根目录下添加pageoffice文件夹(在PageOffice官方网站的“下载中心”中可下载相应的压缩包,解压之后直接将PageOffice示例代码里的pageoffice文件夹拷贝到根目录下就可以了)。

第二步:在网站中创建动态页面ExeclFill.aspx。在工具箱中拖动一个PageOfficeCtrl控件到页面上(PageOfficeCtrl控件位于工具箱最下方),并设置控件所在层(<div></div>)的高和宽,否则Excel文档无法正常显示。

第三步:ExeclFill.aspx.cs后台编写代码。打开Excel文件,给Excel表格赋值,部分代码如下:

//设置PageOfficeCtrl控件的服务页面

PageOfficeCtrl1.ServerPage = "pageoffice/server.aspx";

//定义Workbook对象

PageOffice.ExcelWriter.Workbook workBook = new PageOffice.ExcelWriter.Workbook();

//定义Sheet对象,"Sheet1"是打开的Excel表单的名称

PageOffice.ExcelWriter.Sheet sheet = workBook.OpenSheet("Sheet1");

//定义table对象,设置table对象的设置范围

PageOffice.ExcelWriter.Table table = sheet.OpenTable("B4:F13");

//定义Cell对象

PageOffice.ExcelWriter.Cell cellB4 = sheet.OpenCell("B4");

//给单元格赋值

cellB4.Value = "1";

//设置字体颜色

cellB4.ForeColor = Color.Red;

 

... ...

... ...

 

PageOffice.ExcelWriter.Cell cellF4 = sheet.OpenCell("F4");

cellF4.Value = string.Format("{0:P}",270.0/300);//设置数据显示格式

cellF4.ForeColor = Color.Red;

 

PageOfficeCtrl1.SetWriter(workBook);

PageOfficeCtrl1.WebOpen("doc/test.xls", PageOffice.OpenModeType.xlsNormalEdit, "操作人姓名");//打开文档

如上所述,轻松简单的就完成了Excel表格的赋值。另外,通过PageOffice开发平台还可以完全通过后台代码生成自己想要的Excel表格,并向Excel表格动态填充从数据库获得的数据。