当excel表格中的数据具有极强的层属关系时,我们可以制作一个层次分明的多级分组来对数据进行分级显示。本文将展示如何创建多级分组,并将分组符号显示在数据上方。
c#
//创建wordbook实例
workbook workbook = new workbook();
//获取第一个工作表
worksheet sheet = workbook.worksheets[0];
//写入模拟数据到单元格
sheet.range["a1"].value = "项目计划";
sheet.range["a3"].value = "筹备";
sheet.range["a4"].value = "任务 1";
sheet.range["a5"].value = "任务 2";
sheet.range["a7"].value = "启动";
sheet.range["a8"].value = "任务 1";
sheet.range["a9"].value = "任务 2";
//设置issummaryrowbelow为false, 即总结行显示在明细行上方
sheet.pagesetup.issummaryrowbelow = false;
//选择行进行一级分组
//参数false表示展开当前分组,若要隐藏设置成true
sheet.groupbyrows(2, 9, false);
//选择行进行二级分组
sheet.groupbyrows(4, 5, false);
sheet.groupbyrows(8, 9, false);
//定义一个cellstyle对象,设置单元格内字体颜色及加粗
cellstyle style = workbook.styles.add("style");
style.font.color = color.cadetblue;
style.font.isbold = true;
//应用单元格格式
sheet.range["a1"].cellstylename = style.name;
sheet.range["a3"].cellstylename = style.name;
sheet.range["a7"].cellstylename = style.name;
//设置区域边框样式
sheet.range["a4:a5"].borderaround(linestyletype.thin);
sheet.range["a4:a5"].borderinside(linestyletype.thin);
sheet.range["a8:a9"].borderaround(linestyletype.thin);
sheet.range["a8:a9"].borderinside(linestyletype.thin);
//保存文档
workbook.savetofile("output.xlsx", excelversion.version2013);
vb.net
'创建wordbook实例
dim workbook as new workbook()
'获取第一个工作表
dim sheet as worksheet = workbook.worksheets(0)
'写入模拟数据到单元格
sheet.range("a1").value = "项目计划"
sheet.range("a3").value = "筹备"
sheet.range("a4").value = "任务 1"
sheet.range("a5").value = "任务 2"
sheet.range("a7").value = "启动"
sheet.range("a8").value = "任务 1"
sheet.range("a9").value = "任务 2"
'设置issummaryrowbelow为false, 即总结行显示在明细行上方
sheet.pagesetup.issummaryrowbelow = false
'选择行进行一级分组
'参数false表示展开当前分组,若要隐藏设置成true
sheet.groupbyrows(2, 9, false)
'选择行进行二级分组
sheet.groupbyrows(4, 5, false)
sheet.groupbyrows(8, 9, false)
'定义一个cellstyle对象,设置单元格内字体颜色及加粗
dim style as cellstyle = workbook.styles.add("style")
style.font.color = color.cadetblue
style.font.isbold = true
'应用单元格格式
sheet.range("a1").cellstylename = style.name
sheet.range("a3").cellstylename = style.name
sheet.range("a7").cellstylename = style.name
'设置区域边框样式
sheet.range("a4:a5").borderaround(linestyletype.thin)
sheet.range("a4:a5").borderinside(linestyletype.thin)
sheet.range("a8:a9").borderaround(linestyletype.thin)
sheet.range("a8:a9").borderinside(linestyletype.thin)
'保存文档
workbook.savetofile("output.xlsx", excelversion.version2013)