C#、NPOI基本样式 背景颜色字体等

初始化Excel实例对象

HSSFWorkbook workbook = new HSSFWorkbook();

初始化Sheet工作簿

HSSFSheet sheet = workbook.CreateSheet();

初始化样式

HSSFCellStyle style = workbookAll.CreateCellStyle();

设置边框

style.BorderTop = CellBorderType.THIN;//上
style.BorderBottom = CellBorderType.THIN;//下
style.BorderLeft = CellBorderType.THIN;//左
style.BorderRight = CellBorderType.THIN;//右

单元格文字位置

//上下位置  CellVerticalAlignment.位置值
style.VerticalAlignment = CellVerticalAlignment.CENTER;
//左右位置  CellHorizontalAlignment.位置值
style.Alignment = CellHorizontalAlignment.LEFT;      

设置字体

HSSFFont font = workbookAll.CreateFont();
font.FontHeightInPoints = 9; // 字体大小  直接对应Excel中的字体大小
font.FontName = "宋体"; //跟Excel中的字体值一样,直接写对应的名称即可
font.Boldweight = HSSFFont.BOLDWEIGHT_BOLD;//加粗
style.SetFont(font);

RGB背景颜色

//调色板实例
HSSFPalette palette = workbookAll.GetCustomPalette();
//RGB颜色值,第一个值:8~64之间,后面三个值为RGB色值
palette.SetColorAtIndex((short)8, 179, 179, 179);
//颜色实例
HSSFColor hSSFColor=palette.FindColor(179,179,179);
style.FillPattern = CellFillPattern.SOLID_FOREGROUND;
//应用颜色到Style
style.FillForegroundColor = hSSFColor.GetIndex();

普通背景颜色

style.FillPattern = CellFillPattern.SOLID_FOREGROUND;
//BLUE 为颜色值  蓝色
style.FillBackgroundColor = HSSFColor.BLUE.index;

设置数值格式

//百分比
style.DataFormat = HSSFDataFormat.GetBuiltinFormat("0.00%");
//小数
style.DataFormat = HSSFDataFormat.GetBuiltinFormat("0.00");
//数值格式
cell.SetCellType(HSSFCellType.NUMERIC);

合并单元格

using NPOI.HSSF.Util;//需导入此命名空间
/**
  第一个参数:从第几行开始合并
  第二个参数:从第几列开始合并
  第三个参数:到第几行结束合并
  第四个参数:到第几列结束合并
**/
//sheet 操作的工作簿sheet实例
CellRangeAddress region = new CellRangeAddress(0,0,0,14);
sheet.AddMergedRegion(region);
//也可以直接简写如下:
sheet.AddMergedRegion(new Region(0, 0, 0, 14));

单元格内容自动换行&自适应宽高

cell.CellStyle.WrapText = true;//自動換行

sheet.AutoFitColumns();//自动适应所有列宽
sheet.AutoFitRows();//自动适应所有行高

行高&列宽

//行高
HSSFRow row = sheet.CreateRow(0);//行实例,CreateRow(行号 从0开始)
row.Height = 25 * 20;//制定行高25

//列宽
//第一个值:列序号  第二个值:列宽数值
sheet.SetColumnWidth(0, 18 * 256);

应用样式到单元格

cell.CellStyle = style;

使用C#、NPOI生成Excel表格和统计图表

你可能感兴趣的:(NPOI)