Epplus 使用的简单介绍
操作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;
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.图表的功能就这样实现了,很简单吧
此处图表的没有写出具体代码,因为觉得代码很简单,只是步骤的问题,上面三步走完,图表即可完成了.
还有疑问的,我们可以一起探讨.
Epplus 使用的简单介绍的更多相关文章
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- yii2的权限管理系统RBAC简单介绍
这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...
- angular1.x的简单介绍(二)
首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...
- Linux的简单介绍和常用命令的介绍
Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...
- iOS-iOS开发简单介绍
概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...
- iOS开发多线程篇—多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
- iOS开发UI篇—UITabBarController简单介绍
iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...
随机推荐
- tomcat启动中提示 - consider increasing the maximum size of the cache
tomcat启动过程中提示: org.apache.catalina.webresources.Cache.getResource Unable to add the resource at xxx ...
- LeetCode Contains Duplicate II (判断重复元素)
题意:如果有两个相同的元素,它们之间的距离不超过k,那么返回true,否则false. 思路:用map记录每个出现过的最近的位置,扫一边序列即可.扫到一个元素就判断它在前面什么地方出现过.本题数据有点 ...
- <十一>面向对象分析之UML核心元素之组件
组件
- VS2010使用EventHandler发邮件
转:http://blog.csdn.net/alfred_72/article/details/9980279 因为不知道VS2010 Sharepoint 有EventReciver这个添加项,走 ...
- PHP学习笔记--文件目录操作(文件上传实例)
文件操作是每个语言必须有的,不仅仅局限于PHP,这里我们就仅用PHP进行讲解 php的文件高级操作和文件上传实例我放在文章的最后部分.--以后我还会给大家写一个PHP类似于网盘操作的例子 注意:阅读此 ...
- [转]Oracle 阳历转农历
CREATE TABLE SolarData ( YearID INTEGER NOT NULL, -- 农历年 DATA ) NOT NULL, -- 农历年对应的16进制数 DataInt INT ...
- cocos2d anchor point 锚点解析
anchor point 究竟是怎么回事? 之所以造成不容易理解的是因为我们平时看待一个图片是 以图片的中心点 这一个维度来决定图片的位置的.而在cocos2d中决定一个 图片的位置是由两个维度 一个 ...
- Visual Assist X 破解步骤
1. 下载VA安装包,并点击exe文件安装(附下载地址:http://down.51cto.com/data/766817) 2. 将Visual Assist X Patch文件复制到C:\User ...
- css3 javascript 实现菜单按钮特效
一个菜单按钮特效案例,简单的实现了动态效果. 代码效果预览地址: http://code.w3ctech.com/detail/2504 <div class="bar" i ...
- ORA-12162: TNS:net service name is incorrectly specified
今天在进行修改oracle_sid环境变量的时候,将相关的环境变量值去掉,从而不能进入sqlplus,报错如下: [oracle@kel ~]$ sqlplus / as sysdba SQL*Plu ...