Как выбрать и смещать весь рабочий лист с помощью Apache POI

Я начинаю с библиотеки POI Apache.

в VBA, я знаю, что я могу выделить и выделить жирным шрифтом весь рабочий лист со следующим кодом

Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets(1)
ws.Cells.Font.Bold = True

Могу ли я узнать, как выбрать и выделить весь лист путем кодирования с помощью библиотеки POI Apache?

спасибо

Ответ 2

Шрифт по умолчанию для рабочей книги можно получить из индекса 0. Итак, чтобы изменить шрифт bold по умолчанию для книги:

private void setWorkbookDefaultFontToBold(Workbook workbook){
    Font defaultFont = workbook.getFontAt(0);
    defaultFont.setBoldweight(Font.BOLDWEIGHT_BOLD);
}

Это действительно неясная часть информации - она ​​в POI Sheet Javadoc для setColumnWidth, во второй строке:

"... может отображаться в ячейке, которая отформатирована с помощью стандартного шрифта (первый шрифт в книге)."

Мне не пришлось сильно его использовать, так что, возможно, это просто сработало для меня (расположение и нераспространенность документации на нем заставляет меня слегка лелеять, рекомендуя в зависимости от этого), но это где-то вы могли бы начать глядя

Ответ 3

   private HSSFFont createAndSetFontStyle(HSSFWorkbook wb) {
    HSSFFont font = wb.createFont();
    font.setFontName(XSSFFont.DEFAULT_FONT_NAME);
    font.setBoldweight(XSSFFont.BOLDWEIGHT_BOLD);
    font.setFontHeightInPoints((short)10);
    return font;
}


    HSSFCellStyle cellStyle = workBook.createCellStyle();
    HSSFFont createfont = createAndSetFontStyle(workBook);
    cellStyle.setFont(createfont);

    cell.setCellStyle(cellStyle);