Excel动态合并行、合并列
背景:
在北京工作的时候,又一次同事问了我这样一个问题,说我要把从数据库获取到的数据直接通过NPOI进行导出,但是我对导出的格式要特殊的要求,如图:
冥思苦想,最终顺利帮同事解决问题,虽然有点瑕疵,但是毕竟是盲写,也算是圆满完成任务了:
//假设 DataTable dt=获取到的datatable List<Year_Month> listYear=Year_Month.ToList();//年限list List<Data> dataList=Data.ToList();//国别list List<dt> dtList=dt.ToList();//数据listint countYear=listYear.Count();//年限数量 int countdata=dataList.Count();//国别数量 int countdt=dtList.Count();//数据数量row=sheet.CreateRow(0);//创建行 cell=row.CreateCell(0);//创建列 cell.SetCellValue("时间");//单元格赋值 //合并行,合并列 sheet.AddMergedRegion(new CellRangeAddress(0,2,0,0));//些数据头,时间//标题进出口岸 cell=row.CreateCell(1);//创建列 cell.SetCellValue("进出口岸");//单元格赋值 //合并行,合并列 sheet.AddMergedRegion(new CellRangeAddress(0,0,1,countdata*2));//进出口岸//进口口岸名称 row=sheet.CreateRow(1); for(int i=0;i<dataList.count;i++) {//根据数据条数,动态创建列cell=row.CreateCell(2*i+1);//合并行,合并列sheet.AddMergedRegion(new CellRangeAddress(1,1,2*i+1,2*(i+1)));//进出口岸//批量赋值cell.SetCellValue(dataList[i].GuoName); }//进出口 row=sheet.CreateRow(2); for(int i=0;i<dataList.count;i++) {cell=row.CreateCell(2*i+1);cell.SetCellValue("进口");cell=row.CreateCell(2*i+2); cell.SetCellValue("出口"); }//数据 for(int i=0;i<yearList.count;i++) {row=sheet.CreateRow(i+3);//年份cell=row.CreateCell(0); cell.SetCellValue(yearList[i].nian);//数据赋值for(int j=0;j<datalist.count;j++){var item=shujuzongtiaoshu.where(u=>u.nianfen==yearList[i].year).toList();for(int k=0;k<item.count;k++){//数据有值赋值,没有的值得赋空值单元格站位if(item[k].guobiemingcheng==dataList[j].name){cell=row.CreateCell(2*j+1);cell.SetCellValue(datalist[j].jinkou);cell=row.CreateCell(2*j+2);cell.SetCellValue(datalist[j].chukou);}else{cell=row.CreateCell(2*j+1);cell.SetCellValue("");cell=row.CreateCell(2*j+2);cell.SetCellValue("");}}} }
效果:
提示:图片纯属后来补充,不能代表正式环境下生成文档格式,请见谅
总结:
技术什么的只要肯下功夫都会有的,面包会有的,奶油也会有的。可是难能可贵的是我们在不知道怎么做的时候能坚持一下,去自己脑补,我们要对自己,对生活乃至对工作任务及实现方法充满幻想与想象,只有这样,我们才有取之不竭用之不尽的创新去支持我们,给自己加油!
Excel动态合并行、合并列相关推荐
- rowspan 动态变化_rowspan相同值合并 怎么动态的rowspan合并行
php 怎么控制表格,相同数据合并显示一行 Html中colspan属性和rowspan属性合并后该单元格的一个是合并行.一个合并列 colspan=2就代表合并他和他同一列的后一个单元格 rowsp ...
- Ant Design之表格动态合并行
在web开发中,表格的行合并是一个很常见的需求.antd也提供了这种功能,但是文档中的示例代码却和我想象中的相差甚远,如下所示,它是通过一种很笨的办法实现的行合并.这样当表格的数据源是动态获取的,我们 ...
- java操作导出Excel(jxl导出WritableWorkbook)jxl合并单元格,单元格的设置,单元格居中、字体、大小、换行、合并行,列宽、自动换行撑起高度、指定特定字符串样式等
new WritableCellFormat().setWrap(true);//通过调整宽度和高度自动换行 1.1 需求描述 MS的电子表格(Excel)是Office的重要成员,是保存统计 ...
- java合并sheet行_java poi Excel循环合并行
//Java poi 实现循环合并行,还是第一次遇到这种问题 //在网上查了很多资料,都不是自己想要的 //以下为自己研究后,写的一点东西,给大家分享,希望对大家能有思路上的启发,也希望大家能提出宝贵 ...
- Excel按某一列或多列合并行
如果以某一列或者几列为基准,只要这一列或多列的数据相同就合并这些行的数据,不管这些行的其他列的数据是否相同.例如下图: 比如按登录名和地区两列合并行.希望最终要得到的结果如下: (注,无需比对的其他列 ...
- sed行处理详解(交换行,合并行,删除行等)
1.合并行 zj@zj:~/Script/blog_script$ cat test1 1 2 3 4 合并上下两行 zj@zj:~/Script/blog_script$ sed '$!N;s/\n ...
- elementUI 表格合并单元格-多层级-合并行
elementUI 表格合并单元格-多层级-合并行 需求:使用vue + elementUI 实现如下表格: 省份 城市 区域 人口 贵州 遵义 汇川区 100 红花岗区 100 播州区 100 贵阳 ...
- 【editplus经常用的快捷键】Editplus 选中一行ctrl+r,Edit 合并行 Ctrl+Shift+J 合并选定行 删除当前行
Editplus 选中一行: ctrl+r Editplus 复制一行: ctrl+r选择行,然后ctrl+c复制. 复制一行到下一行中:Editplus有:Ctrl+j 复制上一行的一个字符到当前行 ...
- antd Table合并行 rowSpan
实现这种效果,同一种知识点类型合并行. <Tablecolumns={columns}// dataSource={dataSource}dataSource={createNewArr(dat ...
最新文章
- 机器学习(10)随机森林(预测泰坦尼克号旅客存活率)
- Cell封面:王二涛组在丛枝菌根共生“自我调节”研究中取得重大进展(视频+漫画解读)...
- html,css,javascript之间的关系是什么?各是负责哪方面工作的?
- 获取php数组的键名和值
- python实现冒泡排序视频_Python实现冒泡排序算法的完整实例
- linux安装virtualbox命令,在Linux中从命令行查找Virtualbox Version的方法
- html5 百度地图api文档,开发指南--百度地图JavaScript API大众版.doc
- ASP.NET Core - Razor 页面介绍
- 设计模式是什么鬼(状态)
- 关于JS括号匹配的面试题
- Programming WCF Services翻译笔记(八)
- bzoj2151: 种树
- MySQL(15)-----运算符和优先级查询结果拼接处理及CONCAT()、CONCAT_WAS()和GROUP_CONCAT()函数的使用
- Go 爱好者福利,《Go 语言编程之旅》正式开源!
- Vibe算法原理与实践(C++)
- 腾讯地图产业版WeMap 升级
- 电脑双网卡访问内外网
- SRE(运维工程师)一文详解技术体系和架构师成长之路
- 为什么要有域名,看完你就懂了。
- 记录,Cents 7 更改home和root的中文路径
热门文章
- JavaWeb~模板引擎Thymeleaf总结
- 如何加速打开Axure分享的链接
- 卡尔曼滤波五个公式推导
- 《地理信息系统导论》第4章 栅格数据模型 复习题
- jquery刷新当前页面、刷新父级页面
- 数值分析的matlab答案,Matlab作业3(数值分析)答案.doc
- NFS服务6---四种情况的权限实验
- 一级消防工程师证书价值下降,前景茫然?
- c语言编译小学生计算题,小学生基本运算习题-给小学生编写练习20以内加减法计算的c程序.要求:#61548 爱问知识人...
- 1.计算机的网络功能和组成,1.2计算机网络的组成与功能.ppt