1.添加引用
using OfficeOpenXml;
using OfficeOpenXml.Drawing;
using OfficeOpenXml.Drawing.Chart;
using OfficeOpenXml.Style;
2.所有操作应该在using中
using (ExcelPackage package = new ExcelPackage())
{
}
3.添加表格
var worksheet = package.Workbook.Worksheets.Add(“sheet1");
4.单元格赋值
单元格赋值,这里多说一句,NPOI必须先创建单元格,然后再给单元格赋值,而Epplus不需要,直接找到单元格进行赋值就可以了.
worksheet.Cells[int row, int col].Value = "";
或者
worksheet.Cells["A1"].Value = "";
或者
worksheet.SetValue(row,col,value);//这种赋值方法比上面的性能好一些
5.单元格自动适应大小、设置行高、自动调整行高、设置列宽
合并单元格后列得宽度取决于这个单元格下面的没合并的单元格宽度
worksheet.Cells.Style.ShrinkToFit = true;//单元格自动适应大小
worksheet.Row(1).Height = 15;//设置行高
worksheet.Row(1).CustomHeight = true;//自动调整行高
worksheet.Column(1).Width = 15;//设置列宽
6.单元格合并
worksheet.Cells[$"A{row}:F{row}"].Merge = true;
worksheet.Cells[$"A{row}"].Style.WrapText = true;
worksheet.SelectedRange[$"A{row}"].Value = purchaseHistory[0].LineText;
7.合并后单元格居中
注意合并后单元格的设置以合并前第一个单元格为准进行设置即可
worksheet.Cells[$"A{row}"].Style.VerticalAlignment = ExcelVerticalAlignment.Center;
worksheet.Cells[$"A{row}"].Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
8.设置单元格边线【两种方法--方法2好用】
//方法1
worksheet.Cells[1, 1].Style.Border.BorderAround(ExcelBorderStyle.Thin, Color.FromArgb(191, 191, 191));//设置单元格所有边框
//方法2
worksheet.Cells[1, 1].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;//单独设置单元格底部边框样式和颜色(上下左右均可分开设置)
worksheet.Cells[1, 1].Style.Border.Bottom.Color.SetColor(Color.FromArgb(191, 191, 191));
9.设置单元格字体样式
worksheet.Cells[1, 1].Style.Font.Bold = true;//字体为粗体
worksheet.Cells[1, 1].Style.Font.Color.SetColor(Color.White);//字体颜色
worksheet.Cells[1, 1].Style.Font.Name = "微软雅黑";//字体
worksheet.Cells[1, 1].Style.Font.Size = 12;//字体大小
10.冻结表格标题行【当表格过长时使用】
// 冻结标题(行号,列号)
worksheet.View.FreezePanes(7, 1);