Объединение нескольких листов в один лист
Как объединить листы
В приведенном ниже образце использован метод Range.copy() для копирования всех исходных листов в один лист внутри целевой книги.
Исходная рабочая книга
Вы можете использовать любую исходную рабочую книгу. В этом примере мы используем исходную рабочую книгу, в которой есть три листа.
Лист 1
Лист 2
Лист 3
Выходная рабочая книга
Запуск следующего кода создает рабочую книгу с одним листом, содержащим данные всех трех листов.
На выходном листе теперь содержатся данные всех 3 исходных листов
Загрузить исходную рабочую книгу и выходную рабочую книгу
Пример кода для объединения нескольких листов в один лист
Приведенный ниже фрагмент кода показывает, как объединить несколько листов в один лист.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(CombineMultipleWorksheets.class); | |
Workbook workbook = new Workbook(dataDir + "source.xlsx"); | |
Workbook destWorkbook = new Workbook(); | |
Worksheet destSheet = destWorkbook.getWorksheets().get(0); | |
int TotalRowCount = 0; | |
for (int i = 0; i < workbook.getWorksheets().getCount(); i++) { | |
Worksheet sourceSheet = workbook.getWorksheets().get(i); | |
Range sourceRange = sourceSheet.getCells().getMaxDisplayRange(); | |
Range destRange = destSheet.getCells().createRange(sourceRange.getFirstRow() + TotalRowCount, | |
sourceRange.getFirstColumn(), sourceRange.getRowCount(), sourceRange.getColumnCount()); | |
destRange.copy(sourceRange); | |
TotalRowCount = sourceRange.getRowCount() + TotalRowCount; | |
} | |
destWorkbook.save(dataDir + "output.xlsx"); |