public class POITest { public static void main(String[] args) { //HSSFWorkbook exhibits correct behavior: Workbook workbook = new XSSFWorkbook(); CellStyle vertTop = workbook.createCellStyle(); vertTop.setVerticalAlignment(CellStyle.VERTICAL_TOP); CellStyle vertBottom = workbook.createCellStyle(); vertBottom.setVerticalAlignment(CellStyle.VERTICAL_BOTTOM); Sheet sheet = workbook.createSheet("Sheet 1"); Row row = sheet.createRow(0); Cell top = row.createCell(0); Cell bottom = row.createCell(1); top.setCellValue("Top"); top.setCellStyle(vertTop); //comment this out to get all bottom-aligned cells bottom.setCellValue("Bottom"); bottom.setCellStyle(vertBottom); row.setHeightInPoints(85.75f); //make it obvious try { FileOutputStream out = new FileOutputStream("test.xlsx"); workbook.write(out); out.flush(); out.close(); } catch (IOException e) { e.printStackTrace(System.err); } } }