複数のワークシートを 1 つのワークシートに結合する
Contents
[
Hide
]
場合によっては、複数のワークシートを 1 つのワークシートに結合する必要があります。これは、Aspose.Cells API を使用して簡単に実現できます。この記事では、ソース ワークブックを読み取り、すべてのソース ワークシートのデータを結合して、宛先ワークブック内の 1 つのワークシートにするコード例を示します。
ワークシートの結合
以下のサンプルでは、[範囲.コピー()](https://reference.aspose.com/cells/java/com.aspose.cells/range#copy(com.aspose.cells.Range)メソッドを使用して、すべてのソース ワークシートをコピー先ワークブック内の 1 つのシートにコピーします。
ソース ワークブック
任意のソース ワークブックを使用できます。この例では、3 つのワークシートを持つソース ワークブックを使用しています。
ワークシート 1
ワークシート 2
ワークシート 3
出力ワークブック
次のコードを実行すると、3 つのワークシートすべてのデータを含む 1 つのワークシートを含むワークブックが提供されます。
出力ワークシートに 3 つのソース ワークシートすべてのデータが含まれるようになりました
ソース ワークブックと出力ワークブックをダウンロードする
コード例
次のコード スニペットは、複数のワークシートを 1 つのワークシートに結合する方法を示しています。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 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"); |
その他のリソース
あなたは見つけるかもしれません複数のワークブックを 1 つのワークブックに結合する詳細については、記事を参照してください。