0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Java:異なるワークブック間のワークシートをコピーする

Posted at

シートのコピーは、Excelドキュメントを処理する際によく使用される機能です。この機能を使用すると、関連付けられたシートを同じブックに簡単に配置でき、後で資料を探すのに便利です。この記事では、Free Spire.XLS for Javaを使用してJavaで異なるワークブック間のワークシートをコピーできます。

Spire.XLS.Jarのインストール

方法1:
mavenを使用している場合は、次のコードをプロジェクトのpom.xmlファイルに追加することで、JARファイルをアプリケーションにインポートできます。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

方法2:
mavenを使用していない場合は、このリンクからFree Spire.XLS for Javaをダウンロードできます。ダウンロードが完了したら、ダウンロードパッケージを解凍します。次にIDEAで新しいプロジェクトを作成し、「File」、「Project Structure」、「Modules」、「Dependencies」を順にクリックし、右側の緑の「+」の下の最初のオプション「JARs or Directories」をクリックして、前に解凍したファイルを見つけ、その中のlibフォルダの下にあるSpire.XLS.jarファイルをプロジェクトにインポートします。

異なるワークブック間のワークシートをコピーする

詳細な手順は次のとおりです。

  • Workbookインスタンスを作成し、Workbook.loadFromFile()メソッドを使用してソースドキュメントをロードします。
  • Workbook.getWorksheets()メソッドを使用して、指定したワークシートを取得します。
  • 別のWorkbookインスタンスを作成し、Workbook.loadFromFile()メソッドを使用してターゲットドキュメントをロードします。
  • Worksheet.addCopy()メソッドを使用して、選択したワークシートのコピーをターゲットドキュメントに追加します。
  • Worksheet.copyTheme()メソッドを使用して、ソースドキュメントのトピックをターゲットドキュメントにコピーします。
  • Workbook.saveToFile()メソッドを使用して、ターゲットドキュメントを保存します。
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class CopySheetBetweenWorkbooks {
    public static void main(String[] args) {

        //Workbookインスタンスを作成して、ソースドキュメントをロードする
        Workbook srcWorkbook = new Workbook();
        srcWorkbook.loadFromFile("source.xlsx");

        //指定したワークシートを取得する
        Worksheet originalSheet = srcWorkbook.getWorksheets().get(0);

        //別のWorkbookインスタンスを作成して、ターゲットドキュメントをロードする
        Workbook destWorkbook = new Workbook();
        destWorkbook.loadFromFile("destination.xlsx");

        //選択したワークシートのコピーをターゲットドキュメントに追加する
        Worksheet newSheet = destWorkbook.getWorksheets().addCopy(originalSheet);
        newSheet.setName(originalSheet.getName());

        //ソースドキュメントのトピックをターゲットドキュメントにコピーする
        destWorkbook.copyTheme(srcWorkbook);

        //ターゲットドキュメントを保存する
        destWorkbook.saveToFile("CopySheetBetweenWorkbooks.xlsx");
    }
}

9EE5654D-57D0-4fef-A3FA-489FDC499061.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?