我采用npoi 合并了单元格,但是现在有一个需求,我需要将合并后的单元格垂直居中显示,没有找到npoi对应的操作,请熟悉的朋友指教一下,非常感谢!
//设置style
ICellStyle cellstyle = workbook.CreateCellStyle();
cellstyle.VerticalAlignment = VerticalAlignment.Center;
cellstyle.Alignment = HorizontalAlignment.Center;
//合并操作
sheet.AddMergedRegion(new CellRangeAddress(index["firstRow"], index["lastRow"], index["firstCol"], index["lastCol"]));//起始行,结束行,起始列,结束列
//设置合并后style
var cell = sheet.GetRow(index["firstRow"]).GetCell(index["firstCol"]);
cell.CellStyle = cellstyle;
為右上角的那個单元格设个样式为居中对齐试试
没有效果,我取的是第一个单元格,学经历还是在底部 没有垂直居中
合并0列的n--n+2行:
CellRangeAddress m_region = new CellRangeAddress(n,n+2, 0, 0); //合并0列的n--n+2行
sheet.AddMergedRegion(m_region);
IRow row = sheet.CreateRow(n);
ICell cell = row.CreateCell(0);
ICellStyle cellstyle = hssfworkbook.CreateCellStyle();//设置垂直居中格式
cellstyle.VerticalAlignment = VerticalAlignment.Center;//垂直居中
cell.CellStyle = cellstyle;
HSSFWorkbook book = new HSSFWorkbook();
ICellStyle cellStyle = book.CreateCellStyle();
//设置单元格的样式:水平对齐居中
cellStyle.VerticalAlignment = VerticalAlignment.Justify;//垂直对齐(默认应该为center,如果center无效则用justify)
cellStyle.Alignment = HorizontalAlignment.Center;//水平对齐
cell.CellStyle=cellstyle;