@light___soul
Full Stack Middle Web Developer

Отчет в excel с помощью «apache poi»?

Суть:
При клике на кнопку скачивается excel документ.
В нем есть объединенные ячейки у которых должна быть закрашена граница

проблема:
закрашивается только половина ячейки. Та часть которая была до объединения двух ячеек
spoiler
HSSFRow row3 = spreadsheet.createRow(rowid++);
 spreadsheet.addMergedRegion(new CellRangeAddress(rowid - 1, rowid, 0, 0));
        cell = row3.createCell(0);
        cell.setCellValue("№");
        cell.setCellStyle(styleCaption);

spoiler
HSSFCellStyle styleCaption = workbook.createCellStyle();
        styleCaption.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        styleCaption.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
        styleCaption.setBorderBottom(HSSFCellStyle.BORDER_THIN);
        styleCaption.setBorderLeft(HSSFCellStyle.BORDER_THIN);
        styleCaption.setBorderRight(HSSFCellStyle.BORDER_THIN);
        styleCaption.setBorderTop(HSSFCellStyle.BORDER_THIN);
        styleCaption.setFillBackgroundColor(HSSFColor.GREY_50_PERCENT.index);
        styleCaption.setFont(font);
        styleCaption.setWrapText(true);
        styleMap.put("styleCaption", styleCaption);

  • Вопрос задан
  • 366 просмотров
Решения вопроса 1
@light___soul Автор вопроса
Full Stack Middle Web Developer
Сергей Горностаев @TheDeadOne
Получаете все регионы объединённых ячеек, при назначении ячейке стиля проверяете наличие её в каком-либо из регионов, если она входит в регион, применяете стиль ко всем ячейкам этого региона.

После объединения ячеек нужно вручную закрасить не основную ячейку.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы