//3,样式
worksheet.Cells.Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;//水平居中,全局
worksheet.Cells.Style.VerticalAlignment = ExcelVerticalAlignment.Center;//垂直居中,全局
worksheet.Cells.AutoFitColumns();//全局
worksheet.Cells.Style.WrapText = true;//自动换行,全局
worksheet.Cells.Style.Font.Name = "宋体";//全局
worksheet.Cells["A1"].Style.VerticalAlignment = ExcelVerticalAlignment.Center;//垂直居中,只针对特定单元格
worksheet.Cells["A1:A5"].Style.VerticalAlignment = ExcelVerticalAlignment.Center;//垂直居中,只针对某范围单元格
worksheet.Cells[1, 1].Style.Font.Bold = true;//字体为粗体
worksheet.Cells[1, 1].Style.Font.Color.SetColor(Color.White);//字体颜色
worksheet.Cells[1, 1].Style.Font.Size = 12;//字体大小
worksheet.Cells["A5"].Style.TextRotation = 180;//内容旋转
worksheet.Cells["P5"].Style.SetTextVertical(); //文字竖排
//调整行高
double rowHeight = 15;
worksheet.Row(1).Height = rowHeight;
//调整列宽
double columnWidth = 50;
worksheet.Column(1).Width = columnWidth;
//自动适应长宽
worksheet.Column(1).BestFit = true;
//公式计算
worksheet.Cells["D2:D5"].Formula = "B2*C2";//这是乘法的公式,意思是第二列乘以第三列的值赋值给第四列,这种方法比较简单明了
worksheet.Cells[6, 2, 6, 4].Formula = string.Format("SUBTOTAL(9,{0})", new ExcelAddress(2, 2, 5, 2).Address);//这是自动求和的方法,至于subtotal的用法你需要自己去了解了
至于别的公式大家可以自己尝试一下。
//设置单元格格式
worksheet.Cells[5, 3].Style.Numberformat.Format = "#,##0.00";//这是保留两位小数
单元格的格式设置还有很多,我就不一一列出来了,基本上excel上能实现的Epplus都能实现,大家可以去Epplus的源码上看。
// 设置单元格背景样式
worksheet.Cells[1, 1].Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells[1, 1].Style.Fill.BackgroundColor.SetColor(Color.FromArgb(128, 128, 128));//设置单元格背景色
//设置单元格边框,两种方法
worksheet.Cells[1, 1].Style.Border.BorderAround(ExcelBorderStyle.Thin, Color.FromArgb(191, 191, 191));//设置单元格所有边框
worksheet.Cells[1, 1].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;//单独设置单元格底部边框样式和颜色(上下左右均可分开设置)
worksheet.Cells[1, 1].Style.Border.Bottom.Color.SetColor(Color.FromArgb(191, 191, 191));
// 设置单元格的行高和列宽
worksheet.Cells.Style.ShrinkToFit = true;//单元格自动适应大小
worksheet.Row(1).Height = 15;//设置行高
worksheet.Row(1).CustomHeight = true;//自动调整行高
worksheet.Column(1).Width = 15;//设置列宽
//4、设置sheet背景
worksheet.View.ShowGridLines = false;//去掉sheet的网格线
worksheet.Cells.Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells.Style.Fill.BackgroundColor.SetColor(Color.LightGray);//设置背景色
worksheet.BackgroundImage.Image = Image.FromFile(@"firstbg.jpg");//设置背景图片
//5、插入图片和形状
//插入图片
ExcelPicture picture = worksheet.Drawings.AddPicture("logo", Image.FromFile(@"firstbg.jpg"));//插入图片
picture.SetPosition(100, 100);//设置图片的位置
picture.SetSize(100, 100);//设置图片的大小
//插入形状
ExcelShape shape = worksheet.Drawings.AddShape("shape", eShapeStyle.Rect);//插入形状
shape.Font.Color = Color.Red;//设置形状的字体颜色
shape.Font.Size = 15;//字体大小
shape.Font.Bold = true;//字体粗细
shape.Fill.Style = eFillStyle.NoFill;//设置形状的填充样式
shape.Border.Fill.Style = eFillStyle.NoFill;//边框样式
shape.SetPosition(200, 300);//形状的位置
shape.SetSize(80, 30);//形状的大小
shape.Text = "test";//形状的内容
//6、超链接
//给图片加超链接
ExcelPicture picture = worksheet.Drawings.AddPicture("logo", Image.FromFile(@"firstbg.jpg"), new ExcelHyperLink("http:\\www.baidu.com", UriKind.Relative));
//给单元格加超链接
worksheet.Cells[1, 1].Hyperlink = new ExcelHyperLink("http:\\www.baidu.com", UriKind.Relative);
//7、隐藏sheet
worksheet.Hidden = eWorkSheetHidden.Hidden;//隐藏sheet
worksheet.Column(1).Hidden = true;//隐藏某一列
worksheet.Row(1).Hidden = true;//隐藏某一行
Unity使用
Epplus
导出报表时对表格
属性
的设置
常用设置(字体颜色、大小、
单元格
格式)部分代码
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add(“Sheet1”);
worksheet.DefaultColWidth = 15;//默认列宽
worksheet.DefaultRowHeight = 23;//默认行高
wo...
首先安装直接NuGet安装就行,贼方便。使用方法有很多种办法导出,本文只介绍最方便,代码最少的那种。首先定义一个实体类,例如:public class OutputData {
public string Address { get; set; }
public int Title { get; set; }
public int Description { get; se...
EPPlus
功能齐全,太过臃肿,特别是对
单元格
合并比较复杂,我只需要简单的一个导出Excel的功能,所以进行了封装。
1.下载解压可直接运行项目
2.运行示例,访问api:GET https://localhost:44334/weatherforecast/Export
3.查看示例代码,和注释
4.使用方式:
· new一个Excel文件
·新建一个工作博(可建多个)
·添加Excel的表头(不需要的可以不添加)
·添加对应工作博的数据,需要注意在实体对应字段上添加标签[ExcelColumn(1)],代表第几列的数据
·以流的方式写入httpresponse,浏览器即可自动下载。
1.数据类容需要理解思路,如果不需要合并的情况下就是一个List的实体类,类名随便取。
2.如果有合并的,那么数据类就是一个list的实体下再包涵一个list实体,参见示例。
3.使用的整体思路就是用数格子的方式,封装的思路就是用反射的方式分析数据类自动对应。
4.核心类ExcelExportHelper.cs,只需要把该类添加到自己的项目
中
,在NuGet
中
安装
EPPlus
即可使用该类。
参考原文章:http://www.cnblogs.com/rumeng/p/3785775.html
原文章内容是比较全的,非常推荐大家看。
worksheet.Cells.Style.ShrinkToFit = true;//
单元格
自动适应大小
worksheet.Row(1).Height = 15;//设置行高
worksheet.Row(1).CustomHeight = true;//自...