今天使用NPOI组件时,设置了SetColumnWidth列宽结果不起作用。看了别的博文和我写的也没啥区别。
无效果代码
//创建excel表格
XSSFWorkbook workbook = new XSSFWorkbook();
//创建工作表 sheet
ISheet 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);
由于参考文档说明给sheet 设置SetColumnWidth属性,但是此时并没有创建行,还是一个空表格
有效代码
//创建excel表格
XSSFWorkbook workbook = new XSSFWorkbook();
//创建工作表 sheet
ISheet sheet = workbook.CreateSheet("Subject");
//创建表头单元格
for (int sdf = 0; sdf < sheetTableth.Length; sdf++)
{
//循环创建表头列名字
ICell Icell = headrow.CreateCell(sdf);
Icell.SetCellValue(sheetTableth[sdf]);
//给单元格添加样式
Icell.CellStyle = ThStyleColor;
//列自适应
sheet.AutoSizeColumn(sdf, true);
}
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);