EPPLUS 分组

EPPLUS 分组使用EPPLUS,导出的EXCEL文件中分组publicvoidRow_Col_Grouping_Test(){//http://stackoverflow.com/questions/32760210/how-to-group-rows-columns-in-epplus//Throwinsomedatavardatatable=newDa

大家好,又见面了,我是你们的朋友全栈君。

使用EPPLUS,导出的EXCEL文件中分组

public void Row_Col_Grouping_Test()
{
    //http://stackoverflow.com/questions/32760210/how-to-group-rows-columns-in-epplus

    //Throw in some data
    var datatable = new DataTable("tblData");
    datatable.Columns.AddRange(new[]
    {
        new DataColumn("Header", typeof (string)), new DataColumn("Col1", typeof (int)), new DataColumn("Col2", typeof (int)), new DataColumn("Col3", typeof (object))
    });

    for (var i = 0; i < 10; i++)
    {
        var row = datatable.NewRow();
        row[0] = String.Format("Header {0}", i); row[1] = i; row[2] = i*10; row[3] = Path.GetRandomFileName(); datatable.Rows.Add(row);
    }

    //Create a test file
    var fi = new FileInfo(@"c:\temp\grouping.xlsx");
    if (fi.Exists)
        fi.Delete();

    using (var pck = new ExcelPackage(fi))
    {
        var worksheet = pck.Workbook.Worksheets.Add("Sheet1");
        worksheet.Cells.LoadFromDataTable(datatable, true);

        worksheet.Cells["B12"].Formula = "SUM(B2:B11)";
        worksheet.Cells["C12"].Formula = "SUM(C2:C11)";

        //Row Group 1
        for (var i = 2; i <= 6; i++)
        {
            worksheet.Row(i).OutlineLevel = 1;
            worksheet.Row(i).Collapsed = true;
        }

        //Row Group 2
        for (var i = 6; i <= 10; i++)
        {
            worksheet.Row(i).OutlineLevel = 2;
            worksheet.Row(i).Collapsed = true;
        }

        //Column Group
        for (var i = 2; i <= 4; i++)
        {
            worksheet.Column(i).OutlineLevel = 1;
            worksheet.Column(i).Collapsed = true;
        }

        pck.Save();
    }
}

http://stackoverflow.com/questions/32760210/how-to-group-rows-columns-in-epplus

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149723.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 铁通宽带dns地址(成都dns的服务器地址是多少)

    全国各地电信DNS见下:—————————————————————-北京DNS地址:202.96.199.133202.96.0.133202.106.0.20202.106.148.1202.97.16.195上海DNS地址:202.96.199.132202.96.199.133202.96.20

    2022年4月16日
    104
  • cmd ping大包命令_cmd中ping命令无效

    cmd ping大包命令_cmd中ping命令无效在cmd中用PING命令时,出现’Ping’不是内部或外部命令,也不是可运行的程序或批处理文件。先了解一下内容:1、可执行文件、命令文件和批处理文件以.exe或者.com或者.bat为扩展名的文件分别被称为可执行文件、命令文件和批处理文件。2、外部命令和内部命令DOS命令可以分为外部命令和内部命令,内部命令包含在一个名为command.com的文件,在系统启动时候驻留在内存中。外部命令是保存在c…

    2022年9月14日
    0
  • 如何成为运维架构师

    如何成为运维架构师在百度里搜索运维架构师,你会发现招聘的职位还不少并且月薪、年薪都很可观。提到架构师,大家都觉得挺神秘的,而作为运维领域的架构师,站在系统稳定和高可用、高扩展的角度,其承载着太多的责任和挑战。对于运维工程师来说,运维架构师就像是一个目标抑或是一座山峰。如何成为一名优秀的运维架构师?运维架构师应该具备何种职业素质?需要什么样的知识体系呢?一、职业素质运维架构师一词应该是与系统架构师、软件架构师、网络架构师、业务架构师不同的,虽然都是架构师,但侧重不同。在一个企业的IT系统中,运维架构师更需要具…

    2022年7月17日
    9
  • Asp连接Access 错误-2147467259「建议收藏」

    Asp连接Access 错误-2147467259「建议收藏」查找数据库连接具体错误  IfErrthen   Response.write(“错误编号:”&Err.Number&”错误描述:”&Err.Description&”错误源:”&Err.Source)      Err.Clear      SetConn=Nothing      Conn_Error_Str=”数据库连接错误!请检查连接字符

    2022年7月13日
    11
  • DatagramPacket与DatagramSocket 详解

    DatagramPacket与DatagramSocket 详解1.基本概念:  a.DatagramPacket与DatagramSocket位于java.net包中  b.DatagramPacket表示存放数据的数据报,DatagramSocket表示接受或发送数据报的套接字  c.由这两个类所有构成的网络链接是基于UDP协议,是一种不可靠的协议。  之所以不可靠是因为发送方不负责数据是否发送成功,接收方收到数据时也不会

    2022年5月2日
    79
  • C#的Button.DialogResult属性[通俗易懂]

    C#的Button.DialogResult属性[通俗易懂]如果此属性的DialogResult不是设置为None,并且父窗体是通过ShowDialog方法显示的,则不必挂钩任何事件,单击按钮也可关闭父窗体。然后,该窗体的DialogResult属性将设置为该按钮被单击时的DialogResult。例如,若要创建一个“是/否/取消”对话框,只需添加三个按钮并将其DialogResult属性分别设置为Yes、No和Cancel即可。…

    2022年6月22日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号