ワークシートの複製には、同一のワークブック内または異なるワークブック内で既存のワークシートを複製することが含まれます。この機能により、開発者は元のワークシートの構造、フォーマット、データ、数式、グラフ、およびその他のオブジェクトを含む正確なコピーを作成することができます。実際には、この機能は大規模なスプレッドシートを処理する際に特に有用であり、バックアップファイルの作成やテンプレートの作成にかかる時間と労力を大幅に削減することが証明されています。この記事では、Spire.XLS for Java を使用して Excel でワークシートを複製する方法を紹介します。
Spire.XLS for Java をインストールします
まず、Spire.XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>13.6.5</version>
</dependency>
</dependencies>
ワークブック間でワークシートを複製する
Spire.XLS for Java ライブラリを使用すると、Worksheet.copyFrom() メソッドを使用して、既存のワークブックから別のワークブックにを簡単に複製できます。以下は詳細な手順です。
- 新しい Workbook オブジェクトを作成します。
- Workbook.loadFromFile() メソッドを使用して、ディスクから「sample1.xlsx」を読み込みます。
- Workbook.getWorksheets().get() メソッドを使用して、最初のワークシートを取得します。
- 別の Workbook オブジェクトを作成します。
- Workbook.loadFromFile() メソッドを使用して、ディスクから「sample2.xlsx」を読み込みます。
- Workbook.getWorksheets().add() メソッドを使用して、このファイルに新しいシートを追加します。
- Worksheet.copyFrom() メソッドを使用して、「sample1.xlsx」の最初のワークシートを「sample2.xlsx」の新しく追加されたシートに複製します。
- 出力パスを指定します。
- Workbook.saveToFile() メソッドを使用して結果ファイルを保存します。
- Java
import com.spire.xls.*;
public class copyWorksheet {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook sourceWorkbook = new Workbook();
//ディスクから「sample1.xlsx」をロードする
sourceWorkbook.loadFromFile("sample1.xlsx");
//最初のシートを取得する
Worksheet srcWorksheet = sourceWorkbook.getWorksheets().get(0);
//別のWorkbookオブジェクトを作成する
Workbook targetWorkbook = new Workbook();
//ディスクから「sample2.xlsx」をロードする
targetWorkbook.loadFromFile("sample2.xlsx");
//新しいシートを追加する
Worksheet targetWorksheet = targetWorkbook.getWorksheets().add("added");
//sample1の最初のシートを、sample2の新しく追加されたシートに複製する
targetWorksheet.copyFrom(srcWorksheet);
//出力パスを指定する
String outputFile = "output/CopyWorksheet.xlsx";
//結果ファイルを保存する
targetWorkbook.saveToFile(outputFile, ExcelVersion.Version2013);
sourceWorkbook.dispose();
targetWorkbook.dispose();
}
}
ワークブック内のワークシートを複製する
同じブック内でワークシートを複製することもできます。新しいワークシートをこのブックに追加し、その後、特定のシートを新しいワークシートに複製します。以下は Excel ブック内でワークシートを複製する手順です。
- 新しい Workbook オブジェクトを作成します。
- Workbook.loadFromFile() メソッドを使用して、ディスクから「sample1.xlsx」を読み込みます。
- Workbook.getWorksheets().get() メソッドを使用して最初のワークシートを取得します。
- Workbook.getWorksheets().add() メソッドを使用して "MySheet" という新しいシートを追加します。
- Worksheet.copyFrom() メソッドを使用して、最初のシートを 2 番目のシートに複製します。
- 出力パスを指定します。
- Workbook.saveToFile() メソッドを使用して結果ファイルを保存します。
- Java
import com.spire.xls.*;
public class copySheetWithinWorkbook {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//ディスクから「sample1.xlsx」をロードする
workbook.loadFromFile("sample1.xlsx");
//最初のシートを取得し、新しいシートを追加する
Worksheet sheet = workbook.getWorksheets().get(0);
Worksheet sheet1 = workbook.getWorksheets().add("MySheet");
//最初のシートを2番目のシートに複製する
sheet1.copyFrom(sheet);
//出力パスを指定する
String result = "output/CopySheetWithinWorkbook.xlsx";
//結果ファイルを保存する
workbook.saveToFile(result, ExcelVersion.Version2013);
workbook.dispose();
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。