как создавать листы Excel автоматически каждый день? - PullRequest
0 голосов
/ 04 июля 2018

Я хочу создавать листы Excel с apache poi каждый день, сохраняя другие листы, если они уже есть.

workbook.cloneSheet(0);
workbook.setSheetName(1, DateUtils.getDate());
    XSSFSheet sheet = workbook.getSheetAt(1);

У меня есть шаблон на первом листе, я хотел бы копировать шаблон каждый день, а затем менять его имя (дату дня), а затем заполнять шаблон данными (что я уже знаю, как это сделать).

Но я не знаю, как автоматизировать это (каждый день новый лист), вы можете мне помочь?

РЕШЕНИЕ:

    final int sheetNo = 0;

    if (workbook.getNames(DateUtils.getDate()).isEmpty()) {

        for (int i = 0; i < workbook.getNumberOfSheets(); i++) {
            LOG.debug("Sheet name: " + workbook.getSheetName(i));
        }
        final XSSFSheet sheet = workbook.cloneSheet(sheetNo);
        final int newSheetNo = workbook.getSheetIndex(sheet);
        workbook.setSheetName(newSheetNo,DateUtils.getDate());
       }
...