我在互联网上的任何地方都找不到此信息,因此我想自己找到答案后就将其发布在这里。

我想使用NPOI在电子表格中创建带有边框的单元格,但如何做到这一点并不明显。

最佳答案

这是一些示例代码,用于创建要应用于单元格的单元格样式,使其具有边框。

// create workbook, sheet and a row
HSSFWorkbook wb = new HSSFWorkbook();
var sheet = wb.CreateSheet("Sheet1");
var row = sheet.CreateRow(0);

// create font style
HSSFFont myFont = (HSSFFont)wb.CreateFont();
myFont.FontHeightInPoints = (short)11;
myFont.FontName = "Tahoma";

// create bordered cell style
HSSFCellStyle borderedCellStyle = (HSSFCellStyle)wb.CreateCellStyle();
borderedCellStyle.SetFont(myFont);
borderedCellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Medium;
borderedCellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Medium;
borderedCellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Medium;
borderedCellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Medium;

// create standard cell style
HSSFCellStyle standardCellStyle = (HSSFCellStyle)wb.CreateCellStyle();
standardCellStyle.SetFont(myFont);

// create cell and apply bordered style
var cell = row.CreateCell(0);
cell.SetCellValue("I have a border");
cell.CellStyle = borderedCellStyle;

// create cell and apply standard stlye
var cell = row.CreateCell(1);
cell.SetCellValue("I have NO border");
cell.CellStyle = standardCellStyle;

08-24 17:43