Epplus 使用的簡單介紹
來源https://www.cnblogs.com/sczw-maqing/p/3365395.html
操作Excel的主要有以下類庫:
MyXls(http://sourceforge.net/projects/myxls/)
Koogra(http://sourceforge.net/projects/koogra/)
ExcelLibrary(http://code.google.com/p/excellibrary/)
ExcelPackage(http://excelpackage.codeplex.com/)
EPPlus(http://epplus.codeplex.com/)
LinqToExcel(http://code.google.com/p/linqtoexcel/)
NetOffice(http://netoffice.codeplex.com/) 需安裝Office Excel
從1-6的類庫均不需要安裝Office,不使用Office COM組件;而NetOffice需要安裝Office,它提供的是與Office COM組件差不多的功能。
這裏主要介紹 Epplus。
關於Epplus使用的文章不多,更沒有很豐富的.在這裏給大家分享一下,若是大家覺得文章不錯,希望大家能夠留下足跡,也希望這篇文章能給大家解決實際的問題.這個插件和目前使用比較多的NPOI插件有很多相同的地方,但自己覺得比NPOI更全面和完整一些.NPOI這個插件是我先接觸的,由於NPOI不支持圖表列印,所以後來才接觸了Epplus插件.用它來列印圖表真的是很方便.
廢話不再多說,下面進入正題
簡介: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;
- 設置整個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.圖表的功能就這樣實現了,很簡單吧
此處圖表的沒有寫出具體代碼,因爲覺得代碼很簡單,只是步驟的問題,上面三步走完,圖表即可完成了.
還有疑問的,我們可以一起探討.