0
1

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 3 years have passed since last update.

Java Excelで空白行・列を削除する

Posted at

大量のデータを含むExcelテーブルを操作する時、データの変更によって空白行・列が残ることがあります。その時になったら、Free Spire.XLS for Javaでなら解決できます。このライブラリを通してExcelワークシートにある空白行・列を一括で削除できます。今、その対策に関連するJavaコードを皆さんと共有させていただきます。

JARパッケージのインポート
方法1: Free Spire.XLS for Javaをダウンロードして解凍したら、libフォルダーのSpire.Xls.jarパッケージを依存関係としてJavaアプリケーションにインポートします。

方法2: Mavenリポジトリから直接にJARパッケージをインストールしたら、pom.xmlファイルを次のように構成します。

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

元のExcelドキュメントは次のとおりです:
11.jpg

Javaコード

import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

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

        //Excelドキュメントを読み込みます
        Workbook wb = new Workbook();
        wb.loadFromFile("sample1.xlsx ");

        //最初のワークシートを取得します
        Worksheet sheet = wb.getWorksheets().get(0);

        //すべての行をループします
        for (int i = sheet.getLastRow(); i >= 1; i--)
        {
            //空白行かどうかを判定します
            if (sheet.getRows()[i-1].isBlank())
            {
                //指定した行を削除します
                sheet.deleteRow(i);
            }
        }

        //すべての列をループします
        for (int j = sheet.getLastColumn(); j >= 1; j--)
        {
            //空白の列かどうかを確認します
            if (sheet.getColumns()[j-1].isBlank())
            {
                //指定した列を削除します
                sheet.deleteColumn(j);
            }
        }

        //ドキュメントを保存します
        wb.saveToFile("deleteBlank.xlsx", ExcelVersion.Version2016);
    }
}

実行結果:
22.png

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?