0
0

More than 1 year has passed since last update.

【Java】Excelワークシートの行と列を挿入または削除する方法

Last updated at Posted at 2023-01-29

無料のFree Spire.XLS for Javaを使用すると、プログラムで簡単にExcelワークシートの行や列を挿入したり削除したりすることができます。今回は、JavaアプリケーションでExcelワークシートの行や列を挿入・削除する方法を、以下の部分から紹介します。

【依存関係の追加】

この方法は、無料のFree Spire.XLS for Javaが必要ですので、先にjarファイルをインポートしてください。

1. Maven

Maven を使用している場合、プロジェクトの pom.xml ファイルに以下のコードを追加することで、簡単にアプリケーションに JAR ファイルをインポートすることができます。

<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.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

2. 公式サイトよりJarファイルをダウンロード

まず、Free Spire.XLS for Javaの公式サイトよりzipファイルをダウンロードします。zipファイルを解凍し、libフォルダの下にあるSpire.Xls.jarファイルを依存関係としてプロジェクトにインポートしてください。

Excelワークシートに行を挿入する

Free Spire.XLS for Javaでは、Excelワークシートに行を挿入するための Worksheet.insertRow() メソッドを提供しています。ここでは、Excelのワークシートに行を挿入する手順を説明します。

  • Workbook クラスのインスタンスを作成し、Workbook.loadFromFile() メソッドを使用してExcelドキュメントを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、指定したワークシートを取得します。
  • Worksheet.insertRow(int rowIndex) メソッドを使用して、行を挿入します。
  • Worksheet.insertRow(int rowIndex, rowCount) メソッドを使用して複数行を挿入します。
  • Workbook.saveToFile() メソッドを使用して、ワークブックをファイルに保存します。

Java

import com.spire.xls.*;


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

        //Workbookクラスのインスタンスを作成し、Excelワークブックを読み込む
        Workbook workbook = new Workbook();
        workbook.loadFromFile("家財道具の一覧.xlsx");

        //1つ目のワークシートを取得する
        Worksheet worksheet = workbook.getWorksheets().get(0);

        //ワークシートに行を挿入する
        worksheet.insertRow(5);

        //ワークシートに複数の行を挿入する
        worksheet.insertRow(8, 2);

        //ワークブックを保存する
        workbook.saveToFile("行の挿入.xlsx", ExcelVersion.Version2013);
    }
}

2023-01-29_142734.png

Excelワークシートに列を挿入する

Free Spire.XLS for Javaは、Excelワークシートに列を挿入する Worksheet.insertColumn() メソッドを提供しています。以下は、Javaでワークシートに列を挿入する手順です。

  • Workbook クラスのインスタンスを作成し、Workbook.loadFromFile() メソッドを使用してExcelドキュメントを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、指定したワークシートを取得します。
  • Worksheet.insertColumn(int columnIndex) メソッドを用いて、列を挿入します。
  • Worksheet.insertColumn(int columnIndex, columnCount) メソッドを使用して、複数の列を挿入します。
  • Workbook.saveToFile() メソッドを使用して、ワークブックをファイルに保存します。

Java

import com.spire.xls.*;


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

        //Workbookクラスのインスタンスを作成し、Excelワークブックを読み込む
        Workbook workbook = new Workbook();
        workbook.loadFromFile("家財道具の一覧.xlsx");

        //1つ目のワークシートを取得する
        Worksheet worksheet = workbook.getWorksheets().get(0);

        //ワークシートに列を挿入する
        worksheet.insertColumn(3);

        //ワークシートに複数の列を挿入する
        worksheet.insertColumn(5, 2);

        //ワークブックを保存する
        workbook.saveToFile("列の挿入.xlsx", ExcelVersion.Version2013);
    }
}

2023-01-29_142751.png

Excelワークシートの行と列を削除する

Excelシートに列を追加する手順は、行を追加する手順と似ています。行と列の削除の手順も同様です。ここでは、JavaでExcelのワークシートから行と列を削除する手順を説明します。

  • Workbook クラスのインスタンスを作成し、Workbook.loadFromFile() メソッドを使用してExcelドキュメントを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、指定したワークシートを取得します。
  • Worksheet.deleteRow(index) メソッドで行を削除します。
  • Worksheet.deleteColumn(index, count) メソッドを使用して、複数の列を削除します。
  • Workbook.saveToFile() メソッドを使用して、ワークブックをファイルに保存する。

Java

import com.spire.xls.*;


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

        //Workbookクラスのインスタンスを作成し、Excelワークブックを読み込む
        Workbook workbook = new Workbook();
        workbook.loadFromFile("家財道具の一覧.xlsx");

        //1つ目のワークシートを取得する
        Worksheet worksheet = workbook.getWorksheets().get(0);

        //3行目を削除する
        worksheet.deleteRow(4);

        //5列目から2つの列を削除する
        worksheet.deleteColumn(5, 2);

        //ワークブックを保存する
        workbook.saveToFile("行と列の削除.xlsx", ExcelVersion.Version2013);
    }
}

2023-01-29_143826.png

Excelワークシートの空白の行と列を削除する

プログラマーとして、Excelワークシートの空白の行や列をすべて削除しなければならない場面に出くわすことがあります。Free Spire.XLS for Javaは、すべての空白の行と列を削除することもサポートしています。

  • Workbook クラスのインスタンスを作成し、Workbook.loadFromFile() メソッドを使用してExcelドキュメントを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、指定されたワークシートを取得します。
  • すべての行をループして、worksheet.getRows().isBlank() メソッドを使用して、行が空白であるかどうかをチェックします。
  • もしそうなら、Worksheet.deleteRow() メソッドを使用して、空白の行を削除します。
  • 列が空白であるかどうかを確認するには、Worksheet.getColumns().isBlank() メソッドを使用します。
  • もしそうなら、Worksheet.deleteColumn() メソッドを使用して、空白の列を削除します。
  • Workbook.saveToFile() メソッドを使用して、ワークブックをファイルに保存します。

Java

import com.spire.xls.*;


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

        //Workbookクラスのインスタンスを作成し、Excelワークブックを読み込む
        Workbook workbook = new Workbook();
        workbook.loadFromFile("空白行と空白列.xlsx");

        //1つ目のワークシートを取得する
        Worksheet worksheet = workbook.getWorksheets().get(0);

        //ワークシートから空白行を削除する
        for (int i = worksheet.getRows().length - 1; i >= 0; i--) {
            if (worksheet.getRows()[i].isBlank()) {
                worksheet.deleteRow(i + 1);
            }
        }

        //ワークシートから空白列を削除する
        for (int j = worksheet.getColumns().length - 1; j >= 0; j--) {
            if (worksheet.getColumns()[j].isBlank()) {
                worksheet.deleteColumn(j + 1);
            }
        }

        //ワークブックを保存する
        workbook.saveToFile("空白行・空白列の削除.xlsx", ExcelVersion.Version2013);
    }
}

2023-01-29_145815.png

Free Spire.XLS for Javaは、Excelファイルの変換や、その他多くの編集作業を行うことができます。 Excelワークブックの操作については、Spire.XLS Forumをご覧ください。

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