精华内容
参与话题
问答
  • Epplus

    2019-10-01 13:09:08
    简介:Epplus是一个使用OpenOfficeXML(Xlsx)文件格式,能读写Excel2007/2010文件的开源组件 功效:支持对excel文档的汇入汇出,图表(excel自带的图表基本都可以实现)的列印 使用:首先应该下载Epplus的dll文件...
    简介:Epplus是一个使用Open Office XML(Xlsx)文件格式,能读写Excel 2007/2010文件的开源组件
    功效:支持对excel文档的汇入汇出,图表(excel自带的图表基本都可以实现)的列印
    使用:首先应该下载Epplus的dll文件
    1> 添加dll文件至工程bin文件中
     
    2>在程式中添加引用
    using OfficeOpenXml;        
    using OfficeOpenXml.Drawing;        
    using OfficeOpenXml.Drawing.Chart;        
    using OfficeOpenXml.Style;
    3>所有的操作语句需要放置在下面的using中
    using (ExcelPackage package = new ExcelPackage()) 
     { 
     }
    4.添加新的sheet
     var worksheet = package.Workbook.Worksheets.Add(“sheet1"); 
    5.单元格赋值,这里多说一句,NPOI必须先创建单元格,然后再给单元格赋值,而Epplus不需要,直接找到单元格进行赋值就可以了.
    worksheet.Cells[int row, int col].Value = “”;
    或者
    worksheet.Cells["A1"].Value = “”;
    6.合并单元格
    worksheet.Cells[int fromRow, fromCol, int toRow,int toCol].Merge = true; 
    7.获取某一个区域
    var rangeData= worksheet.Cells[fromRow, fromCol, toRow, toCol];
    8.设置字体
    worksheet.Cells.Style.Font.Name= “正楷”;
    worksheet.Cells.Style.Font.Color    
    worksheet.Cells.Style.Font.Size 
    9.设置边框的属性
    worksheet.Cells.Style.Border.Left.Style= ExcelBorderStyle.Thin ; 
    worksheet.Cells.Style.Border.Right.Style= ExcelBorderStyle.Thin;
    worksheet.Cells.Style.Border.Top.Style= ExcelBorderStyle.Thin;
    worksheet.Cells.Style.Border.Bottom.Style= ExcelBorderStyle.Thin; 
    10.对齐方式
    worksheet.Cells.Style.HorizontalAlignment=ExcelHorizontalAlignment.Center;
    worksheet.Cells.Style.VerticalAlignment =  ExcelVerticalAlignment.Bottom;   
    11. 设置整个sheet的背景色
    worksheet.Cells.Style.Fill.PatternType= ExcelFillStyle.Solid; 
    worksheet.Cells.Style.Fill.BackgroundColor.SetColor(Color.LightBlue);
    12.折行显示
    worksheet.Cells.Style.WrapText= true;
    13.单元格自动适应大小
    worksheet.Cells.Style.ShrinkToFit= true;
    14.格式化单元格value值
    worksheet.Cells.Style.Numberformat.Format= "0.00";
    15.锁定
    worksheet.Cells["A1"].Style.Locked= true;
    注:此处锁定某一个单元格的时候,只有在整个sheet被锁定的情况下才可以被锁定,不然加上锁定属性也是不起作用的~~
     
    二.Epplus另一个出色的地方就是支持图表的列印.功能的實現很簡單,難點在于需求比較細的點上,epplus可能不好實現,但是總的來說是比較好的一個列印圖表的工具
    1.简单介绍一下可以实现的图表类型:
     直條圖、折綫圖、圓形圖、橫條圖、散佈圖、區域圖 等類型的圖表
    2.使用:分为三步,
    第一步是将需要显示在图表中的 数据列印到excel中.
    第二步是创建所需要的图表类型(折线图为例)
    var chart = (worksheet.Drawings.AddChart("LineChart", eChartType.Line) as ExcelLineChart);
    第三步为图表添加第一步列印的数据区间就可以了
    chart.Series.Add(Y軸顯示的數據源,X軸顯示的數據源)
    3.图表的功能就这样实现了,很简单吧
     
    此处图表的没有写出具体代码,因为觉得代码很简单,只是步骤的问题,上面三步走完,图表即可完成了.

    转载于:https://www.cnblogs.com/liudeyun/p/3535740.html

    展开全文
  • EPPlus

    2019-02-24 21:41:00
    public class EPPlus { public static string ExcelContentType { get { return "application/vnd.openxmlformats-officedocument.spreadshe...
     public class EPPlus
        {
            public static string ExcelContentType
            {
                get
                {
                    return "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                }
            }
    
            #region 示例
            //public FileContentResult Export()
            //{
            //    var queryJson = Request.Params["queryJson"] + "";
            //    DataTable dt = new EternalService().GetMenuList(JObject.Parse(queryJson));
            //    goto ddd;
            //    ddd:
            //    byte[] filecontent = ExcelExportHelper.ExportExcel(dt, "", false);
            //    return File(filecontent, ExcelExportHelper.ExcelContentType, "MyMenu.xlsx");
            //}
            #endregion
            /// <summary>
            /// 导出Excel
            /// </summary>
            /// <param name="dataTable">数据源</param>
            /// <param name="heading">工作簿Worksheet</param>
            /// <param name="showSrNo">//是否显示行编号</param>
            /// <param name="columnsToTake">要导出的列</param>
            /// <returns></returns>
            public static byte[] ExportExcel(DataTable dataTable, string heading = "", bool showSrNo = false, params string[] columnsToTake)
            {
                //建立Excel
                byte[] result = null;
                using (ExcelPackage package = new ExcelPackage())
                {
                    ExcelWorksheet workSheet = package.Workbook.Worksheets.Add(string.Format("{0}Data", heading));
                    //workSheet.Workbook.Properties.Title = "inventory";//设置excel的标题
                    workSheet.Workbook.Properties.Author = "凉生";//作者
                    //workSheet.Workbook.Properties.Comments = "this is a test";//备注
                    workSheet.Workbook.Properties.Company = "xin";//公司
    
                    int startRowFrom = string.IsNullOrEmpty(heading) ? 1 : 3;  //开始的行
                    //是否显示行编号
                    if (showSrNo)
                    {
                        DataColumn dataColumn = dataTable.Columns.Add("#", typeof(int));
                        dataColumn.SetOrdinal(0);
                        int index = 1;
                        foreach (DataRow item in dataTable.Rows)
                        {
                            item[0] = index;
                            index++;
                        }
                    }
    
                    //在Excel文件中添加内容
                    workSheet.Cells["A" + startRowFrom].LoadFromDataTable(dataTable, true);
                    // 小单元格的内容自动调整宽度
                    int columnIndex = 1;
                    foreach (DataColumn item in dataTable.Columns)
                    {
                        ExcelRange columnCells = workSheet.Cells[workSheet.Dimension.Start.Row + 1, columnIndex, workSheet.Dimension.End.Row, columnIndex];
                        string maxValue = columnCells.Max(cell => (cell.Value ?? "").ToString());
                        int maxLength = maxValue.Count();
                        if (maxLength < 150) workSheet.Column(columnIndex).AutoFit();//自动调整宽度
                        else workSheet.Column(columnIndex).Style.WrapText = true; //自动换行
                        if (Regex.IsMatch(maxValue, @"^[+-]?\d*[.]?\d*$"))//验证是否为数字字符串
                        {
                            workSheet.Column(columnIndex).Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;//水平居中
                        }
                        if (item.DataType.Equals(Type.GetType("System.DateTime")))//验证是否是时间
                        {
                            workSheet.Column(columnIndex).AutoFit();
                            workSheet.Column(columnIndex).Style.Numberformat.Format = "yyyy-MM-dd HH:mm:ss";
                        }
                        columnIndex++;
                    }
                    // 格式标题-粗体,黄色的黑色
                    using (ExcelRange r = workSheet.Cells[startRowFrom, 1, startRowFrom, dataTable.Columns.Count])
                    {
                        r.Style.Font.Color.SetColor(System.Drawing.Color.White);
                        r.Style.Font.Bold = true;
                        r.Style.Fill.PatternType = ExcelFillStyle.Solid;
                        r.Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#1fb5ad"));
                    }
    
                    // 格式化单元格-添加边框 
                    using (ExcelRange r = workSheet.Cells[startRowFrom + 1, 1, startRowFrom + dataTable.Rows.Count, dataTable.Columns.Count])
                    {
                        r.Style.Border.Top.Style = ExcelBorderStyle.Thin;
                        r.Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                        r.Style.Border.Left.Style = ExcelBorderStyle.Thin;
                        r.Style.Border.Right.Style = ExcelBorderStyle.Thin;
    
                        r.Style.Border.Top.Color.SetColor(System.Drawing.Color.Black);
                        r.Style.Border.Bottom.Color.SetColor(System.Drawing.Color.Black);
                        r.Style.Border.Left.Color.SetColor(System.Drawing.Color.Black);
                        r.Style.Border.Right.Color.SetColor(System.Drawing.Color.Black);
                    }
    
                    // 删除忽略的列
                    for (int i = dataTable.Columns.Count - 1; i >= 0; i--)
                    {
                        if (i == 0 && showSrNo)
                        {
                            continue;
                        }
                        if (columnsToTake.Contains(dataTable.Columns[i].ColumnName))
                        {
                            workSheet.DeleteColumn(i + 1);
                        }
                    }
    
                    if (!String.IsNullOrEmpty(heading))
                    {
                        workSheet.Cells["A1"].Value = heading;
                        workSheet.Cells["A1"].Style.Font.Size = 20;
    
                        workSheet.InsertColumn(1, 1);
                        workSheet.InsertRow(1, 1);
                        workSheet.Column(1).Width = 5;
                    }
    
                    result = package.GetAsByteArray();
    
                }
                return result;
            }
    
    
            #region 示例
    
            // public ActionResult UploadExcle(HttpPostedFileBase file)
            //{
            //    if (file == null) return Content("没有文件!", "text/plain");
            //    var sourcePath = Path.Combine(Server.MapPath("~/tempFiles/"), Path.GetFileName(file.FileName));
            //    //建立临时传输文件夹
            //    if (!Directory.Exists(Path.GetDirectoryName(sourcePath)))
            //        Directory.CreateDirectory(sourcePath);
            //    file.SaveAs(sourcePath);
            //    DataSet dt = ExcelToTable.ReadExcelToDataSet(sourcePath);
            //    //处理数据
            //    //。。。。。。
            //    //删除文件
            //    System.IO.File.Delete(sourcePath);
            //    return Content("");
            //} 
            #endregion
            /// <summary>
            /// 导入
            /// </summary>
            /// <param name="filePath"></param>
            /// <returns></returns>
            public static DataSet ReadExcelToDataSet(string filePath)
            {
                DataSet ds = new DataSet("ds");
                DataRow dr;
                object objCellValue;
                string cellValue;
                using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite))
                using (ExcelPackage package = new ExcelPackage())
                {
                    package.Load(fs);
                    foreach (var sheet in package.Workbook.Worksheets)
                    {
                        if (sheet.Dimension == null) continue;
                        var columnCount = sheet.Dimension.End.Column;//获取worksheet的列数
                        var rowCount = sheet.Dimension.End.Row; //获取worksheet的行数
                        if (rowCount > 0)
                        {
                            DataTable dt = new DataTable(sheet.Name);
                            for (int j = 0; j < columnCount; j++)//设置DataTable列名  
                            {
                                objCellValue = sheet.Cells[1, j + 1].Value;
                                cellValue = objCellValue == null ? "" : objCellValue.ToString();
                                dt.Columns.Add(cellValue, typeof(string));
                            }
                            for (int i = 2; i <= rowCount; i++)
                            {
                                dr = dt.NewRow();
                                for (int j = 1; j <= columnCount; j++)
                                {
                                    objCellValue = sheet.Cells[i, j].Value;
                                    cellValue = objCellValue == null ? "" : objCellValue.ToString();
                                    dr[j - 1] = cellValue;
                                }
                                dt.Rows.Add(dr);
                            }
                            ds.Tables.Add(dt);
                        }
                    }
                }
                return ds;
    
            }
        }

     

    转载于:https://www.cnblogs.com/xxxin/p/10428106.html

    展开全文
  • epplus

    2014-03-13 09:09:00
    http://epplus.codeplex.com/ Create advanced Excel 2007/2010 spreadsheets on the server ...EPPlus is a .net library that reads and writes Excel 2007/2010 files using the Open Office Xml format (xl...
    1. http://epplus.codeplex.com/
    2. Create advanced Excel 2007/2010 spreadsheets on the server

    3. EPPlus is a .net library that reads and writes Excel 2007/2010 files using the Open Office Xml format (xlsx). 
    4. http://excelpackage.codeplex.com/

    转载于:https://www.cnblogs.com/dmdj/p/3597784.html

    展开全文
  • EPPlus 4.1

    2018-11-14 16:23:15
    经过实际的项目测试,下载后直接引用到项目中就可使用的 EPPlus.dll
  • EPPlus3.1.3

    2013-08-26 17:34:00
    EPPlus 操作 xlsx
  • EPPlus.dll

    2020-07-24 18:23:09
    EPPlus.dll 4.5.3.3,非常强大的 Excel 操作工具。可用于 DotNet 开发或者 Unity 开发,亲测可用。
  • EPPlus的官方资料

    2019-03-27 09:50:34
    EPPlus的官方资料,包括 EPPlus.sln 和 EPPlus.Core.sln
  • EPPLUS 分组

    2017-05-03 16:51:12
    使用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 ...

    使用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
    展开全文
  • 开源强大的操作EXCEL文档的第三方控件EPPlus(源码) 第三方控件EPPLUS 是完全免费的,而且是开源的,而且对一般的操作功能足够 不过从官网下载的源码不知道什么原因有些乱码,下面附件中的源码是我整理过后的源码,...
  • Epplus 4.1 帮助文件

    2016-10-18 17:29:51
    Epplus 4.1 的类库说明
  • Contribution to EPPLUS

    2021-01-08 18:10:32
    <div><p>Hi, I'm C# developer, I use this DLL a lot and really I would like to help coding or something, but I'm trying to find any documentation about how to help, ...JanKallman/EPPlus</p></div>
  • 使用EPPLUS操作Excel

    2018-01-14 17:12:10
    使用Epplus read Excel文件,write Excel文件,从DataGridView导出至Excel。
  • C#EPPlus控件的使用

    2017-12-12 13:56:24
    使用EPPlus控件导出DataTable到本地,生成Excel文件; 使用EPPlus控件导入本地Excel文件到DataTable; 使用EPPlus控件导出附有数据图(折线图、柱形图、扇形图)的Excel文件; 使用EPPlus控件常用的属性设置及其解释。 ...
  • DocX&EPPlus.zip

    2020-05-10 22:17:17
    DocX可以操作word文档的开源库,EPPlus可以操作Excel2007以后的所有Excel的开源库。包含两个开源库的源码
  • /*引用NuGet包 EPPlus*//// ///Excel导出帮助类/// public classExcelExportHelper{public static string ExcelContentType => "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";/// ///...
  • epplus_excelDemo.rar

    2020-04-27 16:12:30
    epplus_excelDemo 现在项目中存在的大量列表数据,都需要excel导入导出的功能。netcore有专门适应的技术epplus,自己搭建测试了一下。demo供大家分享
  • EPPlus应用笔记

    千次阅读 2020-03-17 14:44:36
    C#窗体程序中经常会使用到对数据的输入输出,而Excel文件是比较通用的文本格式,针对功能需求: 快速方便读写Excel文件 ...通常有NPOI、ClosedXML、EPPlus等类库可供使用,本文对EPPlus的简单使用做一总结。 ...
  • 小弟刚刚走上工作岗位不久,工作中常常遇到要导出Excel的情况,但感觉两种常见的导出方式(一种是通过GridView,另一种是通过微软的COM组件)...EPPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/20...
  • EPPLUS 库压缩包

    2012-07-31 09:56:22
    EPPLUS 接口压缩包。包含文档和DLL
  • EPPLus语法应用

    千次阅读 2019-07-03 19:28:49
    EPPLus 语法 初始化EPPlus对象 using(ExcelPackage package = new ExcelPackage(new FileInfo(@"D:\Doc\20180102Logs.xlsx"))) { //所有生成xlsx的语句必须写在using领域内部 } 以下语句必须在using语句中编写 ...
  • EPPlus操作Excel

    2019-07-23 01:26:10
    EPPlus是一个可以读写Excel的第三方插件 1.官网http://epplus.codeplex.com/ 2.代码:读取Excel中某个单元格 using OfficeOpenXml; string path = @"C:\Users\Administrator\Desktop\t1.xlsx";FileInfo new...
  • Epplus TableStyles样式

    2020-09-09 10:20:30
    Epplus TableStyles样式 public enum TableStyles { // // 摘要: // No table style None = 0, // // 摘要: // Custom table style Custom = 1, // // 摘要: // Light sty

空空如也

1 2 3 4 5 ... 20
收藏数 792
精华内容 316
关键字:

epplus