最近在做excel相关的东西,发现NPOI组件很好用.xlsx、.xls都可以操作
.xlsx 要使用XSSFWorkbook
.xls 要使用HSSFWorkbook
HSSFWorkbook:是操作Excel以前(包括)的版本,扩展名是.xls
XSSFWorkbook:是操作Excel的版本,扩展名是.xlsx
设置背景表格宽度、高度
这里注意有一个坑,一定要先创建表头数据,否则设置宽度无效,具体参考此博文
//创建excel表格XSSFWorkbook workbook = new XSSFWorkbook();//创建工作表 sheetISheet sheet = workbook.CreateSheet(Subject);//这里注意有一个坑,一定要先创建表头数据,否则设置宽度无效。。sheet.SetColumnWidth(0, 10 * 256);sheet.SetColumnWidth(1, 35 * 256);sheet.SetColumnWidth(2, 50 * 256);sheet.SetColumnWidth(3, 10 * 256);sheet.SetColumnWidth(4, 20 * 256);//默认列宽 SetColumnWidth每个单元格都需要设置,DefaultColumnWidth 只需要设置一次sheet.DefaultColumnWidth = 10 * 256;//列自适应sheet.AutoSizeColumn(sdf, true);
设置边框和边框颜色
rowStyleColor.BorderRight = BorderStyle.Thin;rowStyleColor.BorderLeft = BorderStyle.Thin;rowStyleColor.BorderTop = BorderStyle.Thin;rowStyleColor.BorderBottom = BorderStyle.Thin;rowStyleColor.SetTopBorderColor(new XSSFColor(IndexedColors.Black.RGB));rowStyleColor.SetBottomBorderColor(new XSSFColor(IndexedColors.Black.RGB));rowStyleColor.SetLeftBorderColor(new XSSFColor(IndexedColors.Black.RGB));rowStyleColor.SetRightBorderColor(new XSSFColor(IndexedColors.Black.RGB));
设置表格文字格式
//表格样式XSSFCellStyle ThStyleColor = (XSSFCellStyle)workbook.CreateCellStyle();//水平居中ThStyleColor.Alignment = HorizontalAlignment.Center;//垂直居中ThStyleColor.VerticalAlignment = VerticalAlignment.Center;//自动换行ThStyleColor.WrapText = true;//实例化表格样式XSSFColor xssfColor = new XSSFColor();//设置表格背景颜色//设置rgbbyte[] colorRgb = {100, 149, 237 };//写入rgb值xssfColor.SetRgb(colorRgb);//设置rgbThStyleColor.FillForegroundColorColor = xssfColor;//设置填充样式ThStyleColor.FillPattern = FillPattern.SolidForeground;
以后遇到会不断补充
如果觉得《C# 导出Excel 组件NPOI设置单元格格式》对你有帮助,请点赞、收藏,并留下你的观点哦!