1、打开文件

FileInfo fileInfo = new FileInfo(strFilePath);
using (ExcelPackage package = new ExcelPackage(fileInfo)){ExcelWorksheet Mapping = package.Workbook.Worksheets.Add(SheetName);ExcelWorksheet Mst = package.Workbook.Worksheets.Add("Mst");package.Save(); //Save the workbook.}

2、赋值

 int skip = 0;
//填充Mst
for (int i = 1; i < ds.Tables.Count; i++)
{Column = IndexToColumn(2 * i - 1);//填充列,连同数据源表头一起填充Mst.Cells[Column + "1"].LoadFromDataTable(ds.Tables[i], true);var ListValidation = Mapping.DataValidations.AddListValidation(Mapping.Cells[Startx + Endx + 1, i + skip, Startx + Endx + effectRow, i + skip].Address);//设置下拉框显示的数据区域ListValidation.Formula.ExcelFormula = "=Mst!$" + Column + "$2:$" + Column + "$" + (ds.Tables[i].Rows.Count + 1).ToString();//数据区域的名称if (i == 4){skip = 1;Column = IndexToColumn(i);string strColumn = Column + (Startx + Endx + 1).ToString();Mapping.Cells[Startx + Endx + 1, i + skip, Startx + Endx + effectRow, i + skip].Formula = "=IFERROR(RIGHT(" + strColumn + ",LEN(" + strColumn + ") - FIND(\"@\"," + strColumn + ")), \"\")";}ListValidation.ShowErrorMessage = true;ListValidation.Error = Language.GetChiEng("Please choose options from the drop down only.", "请选择存在于下拉框的值");ListValidation.ErrorTitle = Language.GetChiEng("Entry was invalid.", "输入的数据无效");}
var intValidation = Mapping.DataValidations.AddIntegerValidation(Mapping.Cells[Startx + Endx + 1, Endy + PostionCount + Other.Length, Startx + Endx + effectRow, Endy + PostionCount + Other.Length].Address);
intValidation.Operator = ExcelDataValidationOperator.between;
intValidation.Formula.Value = DateTime.Now.Year - 50;//有效值,取当前年的前后50年
intValidation.Formula2.Value = DateTime.Now.Year + 50;
intValidation.ShowErrorMessage = true;
intValidation.Error = Language.GetChiEng("Please input year.", "请输入年份");
intValidation.ErrorTitle = Language.GetChiEng("Entry was invalid.", "输入的数据无效");

3、样式

//冻结表头
Mapping.View.FreezePanes(4, 1);//合并行列
Mapping.Cells[1, 1, 3, 5].Merge = true;
Mapping.Cells[1, 6, 3, 11].Merge = true;Mapping.Cells[1, 1].Value = " Sample Type Mapping and Time Per Style";Mapping.Cells[1, 6].Value = "Position Time Per Style(H)";Mapping.Cells[1, 1, 30, 11].Style.Font.Bold = true;//字体为粗体
//设置背景颜色
Mapping.Cells[1, 1, 30, 11].Style.Fill.PatternType = ExcelFillStyle.Solid;
Mapping.Cells[1, 1, 30, 11].Style.Fill.BackgroundColor.SetColor(Color.FromArgb(221, 235, 247));//负数则红色字体显示
ExcelAddress excelAddress = new ExcelAddress(1, 1, 30, 11);
var cond = Mapping.ConditionalFormatting.AddLessThan(excelAddress);
cond.Style.Font.Color.Color = Color.Red;
cond.Formula = "0";//设置边框及颜色
using (ExcelRange r = Mapping.Cells[1, 1, 30, 11])
{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(Color.Black);r.Style.Border.Bottom.Color.SetColor(Color.Black);r.Style.Border.Left.Color.SetColor(Color.Black);r.Style.Border.Right.Color.SetColor(Color.Black);
}Mapping.Cells.Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;//水平居中
Mapping.Cells.Style.VerticalAlignment = ExcelVerticalAlignment.Center;//垂直居中
Mapping.Cells.AutoFitColumns();//宽度自适应
Mapping.Cells.Style.WrapText = true;//自动换行

epplus 一般使用教程相关推荐

  1. EPPlus导出和Spire.Xls导入、导出Pdf/Image、调节工作簿比例和视图模式

    EPPLus导出的教程 ,总结的很详细: http://www.cnblogs.com/rumeng/p/3785775.html https://www.cnblogs.com/chenwolong ...

  2. 导出Excel之Epplus使用教程2(样式设置)

    导出Excel之Epplus使用教程1(基本介绍) 导出Excel之Epplus使用教程2(样式设置) 导出Excel之Epplus使用教程3(图表设置) 导出Excel之Epplus使用教程4(其他 ...

  3. .net core EPPlus npoi_微软官方上线免费C#、.NET在线教程视频

    程序员书库(ID:OpenSourceTop) 综合整理 如果你一直在考虑要不要学习C#,那就不要犹豫了,微软针对 C#初学者,推出了一套免费的教程视频. 这套视频涵盖一百多个短视频,介绍C#..NE ...

  4. Epplus:导出Excel

    看到其它大神的Epplus导出Excel,结合写出符合自己需求的将导出数据到Excel,给其它人参考一下,也可以学习http://www.cnblogs.com/caofangsheng/p/6149 ...

  5. 使用Docker搭建svn服务器教程

    使用Docker搭建svn服务器教程 svn简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很 ...

  6. mysql修改校对集_MySQL 教程之校对集问题

    本篇文章主要给大家介绍mysql中的校对集问题,希望对需要的朋友有所帮助! 推荐参考教程:<mysql教程> 校对集问题 校对集,其实就是数据的比较方式. 校对集,共有三种,分别为:_bi ...

  7. mysql备份psb文件怎么打开_Navicat for MySQL 数据备份教程

    原标题:Navicat for MySQL 数据备份教程 一个安全和可靠的服务器与定期运行备份有密切的关系,因为错误有可能随时发生,由攻击.硬件故障.人为错误.电力中断等都会照成数据丢失.备份功能为防 ...

  8. php rabbmq教程_RabbitMQ+PHP 教程一(Hello World)

    介绍 RabbitMQ是一个消息代理器:它接受和转发消息.你可以把它当作一个邮局:当你把邮件放在信箱里时,你可以肯定邮差先生最终会把邮件送到你的收件人那里.在这个比喻中,RabbitMQ就是这里的邮箱 ...

  9. 【置顶】利用 NLP 技术做简单数据可视化分析教程(实战)

    置顶 本人决定将过去一段时间在公司以及日常生活中关于自然语言处理的相关技术积累,将在gitbook做一个简单分享,内容应该会很丰富,希望对你有所帮助,欢迎大家支持. 内容介绍如下 你是否曾经在租房时因 ...

最新文章

  1. 王道考研 计算机网络笔记 第二章:物理层
  2. 电源稳定性测试软件,电源测试:电源设计的稳定性测量
  3. Docker 17.12.0 发布
  4. Spring-Kafka消费者源码阅读笔记
  5. sklearn自学指南(part19)--LDA和QDA
  6. excel实战应用案例100讲(十)-下载的文件显示“文件已损坏,无法打开”?
  7. 学习Spring Boot:(七)集成Mybatis
  8. shell的简单应用
  9. 发布后500访问错误 —— dll引用错误
  10. 一种拜占庭共识协议-Byzantine Agreement,Made Trivial
  11. 坦克世界无法连接服务器未响应,打开坦克世界提示网络异常或者连接不上
  12. Windows每月更新补丁离线安装包下载
  13. 粤语 之 粤语学习的一些学习网站和工具整理
  14. Python和R语言的区别
  15. EditPlus实现json格式化
  16. 世预赛首发焦点解析:里皮的思路你能懂?
  17. 基于云开发的微信小程序:个人相册ByUestcXiye
  18. Nagios XI网络监控软件安装
  19. 笔记本电脑应用商店服务器错误,Windows10系统无法打开这个应用商店解决方法
  20. 深度学习三巨头之Yann LeCun(杨立昆)简介

热门文章

  1. JAVA毕业生就业信息管理系统计算机毕业设计Mybatis+系统+数据库+调试部署
  2. 【图像分割】基于局部信息的模糊C均值聚类算法(FLICM)实现图像分割matlab代码
  3. 基于ghOSt用户调度器的环境搭建
  4. 【signal】傅里叶分析和FFT蝶形算法
  5. Django实战—— Web可视化漏洞扫描器
  6. 通配符SSL证书 什么是通配符SSL证书 通配符SSL证书的好处
  7. 用CDN的小伙伴注意了 小心阿里云注销你的备案
  8. 多普达各种机型硬启方法大全(包含谷歌系统机型)
  9. 一品资源网自用官网模板源码下载站(带手机模板)
  10. 利用Html,Css,javaScript简单写一个计算一天秒的倒计时