求C# winform 使用NPOI 通过excel模板制作excel导出。
2个回答
展开全部
假如你有个这样的模板
代码像这样处理,如下
FileStream file = new FileStream(@"模板路径/book1.xls", FileMode.Open,FileAccess.Read);
HSSFWorkbook hssfworkbook = new HSSFWorkbook(file);
HSSFSheet sheet1 = hssfworkbook.GetSheet("Sheet1");
sheet1.GetRow(1).GetCell(1).SetCellValue(200200);
sheet1.GetRow(2).GetCell(1).SetCellValue(300);
sheet1.GetRow(3).GetCell(1).SetCellValue(500050);
sheet1.GetRow(4).GetCell(1).SetCellValue(8000);
sheet1.GetRow(5).GetCell(1).SetCellValue(110);
sheet1.GetRow(6).GetCell(1).SetCellValue(100);
sheet1.GetRow(7).GetCell(1).SetCellValue(200);
sheet1.GetRow(8).GetCell(1).SetCellValue(210);
sheet1.GetRow(9).GetCell(1).SetCellValue(2300);
sheet1.GetRow(10).GetCell(1).SetCellValue(240);
sheet1.GetRow(11).GetCell(1).SetCellValue(180123);
sheet1.GetRow(12).GetCell(1).SetCellValue(150);
//Force excel to recalculate all the formula while open
sheet1.ForceFormulaRecalculation = true;
//生成新的excel
FileStream file = new FileStream(@"test.xls", FileMode.Create);
hssfworkbook.Write(file);
file.Close();
首先打开模板文件时要使用FileAccess.Read,这样可以保证文件不被占用。
这里的ForceFormulaRecalculation是强制要求Excel在打开时重新计算的属性,在拥有公式的xls文件中十分有用,使用时可别忘了设。
是不是比你想象的简单?你甚至不用去了解它是在何时读取文件内容的,对于NPOI的使用者来说基本上和读取普通文件没有什么两样。
最终生成的效果如下所示:
追答
只要你把模板定义好,再复杂的报表也一样的处理方式啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
博思aippt
2024-07-20 广告
2024-07-20 广告
博思AIPPT是基于ai制作PPT的智能在线工具,它提供了4种AI制作PPT的方式,包括AI生成大纲、AI直接生成PPT、文本生成PPT、AI提炼word文档生成PPT,一站式集成多种AI生成PPT的方式,可满足办公用户的不同需求和使用场景...
点击进入详情页
本回答由博思aippt提供
展开全部
我这有代码 邮箱给我我给你发 求给分
追问
求指导 比较复杂的报表 加 1060002916
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询