初始化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;