C#如何创建Excel多级分组

 我来答
Jack4DotNet
2018-05-29 · TA获得超过128个赞
知道小有建树答主
回答量:218
采纳率:91%
帮助的人:31.1万
展开全部

下载Spire.XLS, 引用Spire.Xls.dll到项目

using Spire.Xls;
using System.Drawing;

namespace GroupRows
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建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);
        }
    }
}

效果:

当然,你可以用Workbook.LoadFormFile方法加载一个现成的Excel文件,然后对其中的行或列进行分组。希望对你有用。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式