Я экспортировал файл Excel, как изображение: введите описание изображения здесь
Я хочу отредактировать «align_center» для текста на листе.Когда я объединяю два ряда, я хочу отформатировать для него «центр».Это код его бэк-энда:
CellStyle headerCellStyle = workbook.createCellStyle();
headerCellStyle.setFont(headerFont);
headerCellStyle.setAlignment(HorizontalAlignment.CENTER);
// Row for Header
Row headerRow = sheet.createRow(0);
// Header
for (int col = 0; col < COLUMNTASK.length; col++) {
Cell cell = headerRow.createCell(col);
cell.setCellValue(COLUMNTASK[col]);
cell.setCellStyle(headerCellStyle);
}
for (int col = 0; col < COLUMNTASK.length; col++) {
Cell cell = headerRow.createCell(col);
cell.setCellValue(COLUMNTASK[col]);
cell.setCellStyle(headerCellStyle);
}
int count;
for (int i = 0; i < allTasks.size()-1; i++) {
count = i;
for (int j = count+1; j < allTasks.size(); j++) {
if (allTasks.get(i).getUserName().equals(allTasks.get(j).getUserName())) {
count++;
} else if (count != i) {
sheet.addMergedRegion(new CellRangeAddress(i+1, count+1, 0, 0));
i = count;
} else if (count == i) {
break;
}
if (count == allTasks.size()-1) {
sheet.addMergedRegion(new CellRangeAddress(i+1, count+1, 0, 0));
i = count;
break;
}
}
}
int rowIdx = 1;
for (WorkingTimeReportResponse workingTimeReportResponse : allTasks) {
Row row = sheet.createRow(rowIdx++);
row.createCell(0).setCellValue(workingTimeReportResponse.getUserName());
row.createCell(1).setCellValue(workingTimeReportResponse.getProjectName());
row.createCell(2).setCellValue(workingTimeReportResponse.getIssue());
row.createCell(3).setCellValue(workingTimeReportResponse.getTotalHours());
}