Excel ワークシートにおけるテーブルは、ヘッダー、オプションの合計行、フィルターや並べ替え、データの挿入・削除、計算列などの機能が組み込まれた、特別に指定された領域です。このテーブル機能により、データの操作や分析が非常に簡単になります。Java アプリケーション内で Excel データ操作を自動化または統合したい開発者にとって、これらのワークシート内でテーブルを作成、修正、または削除するスキルは非常に重要です。本記事では、Java で 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>14.12.0</version>
</dependency>
</dependencies>
Java で Excel ワークシートにテーブルを作成する
Java を使用して Excel ワークシート内にテーブルを作成するには、Worksheet.getListObjects().create(String tableName, IXLSRange cellRange) メソッドを使用できます。以下の手順に従って、テーブルを作成しカスタマイズします:
- Workbook クラスのインスタンスを作成します。
- Workbook.loadFromFile() メソッドを使用して、既存の Excel ファイルを読み込みます。
- Workbook.getWorksheets().get() メソッドを使用して、目的のワークシートを取得します。
- Worksheet.getRange().get() メソッドを使用して、テーブルのセル範囲を取得します。
- Worksheet.getListObjects().create(String tableName, IXLSRange cellRange) メソッドを使用して、名前と範囲を指定してテーブルを作成します。
- 必要に応じてテーブルをフォーマットします。
- Workbook.saveToFile() メソッドを使用して変更を保存します。
- Java
import com.spire.xls.CellRange;
import com.spire.xls.TableBuiltInStyles;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
import com.spire.xls.core.IListObject;
public class CreateTableExcel {
public static void main(String[] args) {
// Workbookのインスタンスを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.loadFromFile("Sample.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.getWorksheets().get(0);
// テーブルのセル範囲を取得
CellRange range = sheet.getCellRange("A1:F7");
// テーブルを作成
IListObject table1 = sheet.getListObjects().create("Table1", range);
// テーブルに組み込みスタイルを適用
table1.setBuiltInTableStyle(TableBuiltInStyles.TableStyleLight16);
// ワークブックを保存
workbook.saveToFile("output/Excelで表を作成.xlsx");
workbook.dispose();
}
}
Java で Excel ワークシート内のテーブルを修正する
Spire.XLS for Java は、IListObject クラスのメソッドを通じて、テーブル名、セル範囲、スタイル、ヘッダーの表示など、ワークシートテーブルのプロパティを修正する機能を提供します。以下の手順で Excel ワークシート内のテーブルを修正できます:
- Workbook クラスのインスタンスを作成します。
- Workbook.loadFromFile() メソッドを使用して、既存の Excel ファイルを開きます。
- Workbook.getWorksheets().get() メソッドを使用して、テーブルを含むワークシートを取得します。
- Worksheet.getListObjects().get() メソッドを使用して、テーブルにアクセスします。
- IListObject クラス内のメソッドを使用して、テーブルのプロパティ(名前、スタイル、ヘッダーなど)を更新します。
- Workbook.saveToFile() メソッドを使用して更新されたワークブックを保存します。
- Java
import com.spire.xls.TableBuiltInStyles;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
import com.spire.xls.core.IListObject;
public class ModifyTableExcel {
public static void main(String[] args) {
// Workbookのインスタンスを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.loadFromFile("output/Excelで表を作成.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.getWorksheets().get(0);
// テーブルを取得
IListObject table = sheet.getListObjects().get(0);
// テーブルを修正
table.setName("NewTable"); // 名前を変更
table.setLocation(sheet.getRange().get("A1:C7")); // 場所を変更
table.setBuiltInTableStyle(TableBuiltInStyles.TableStyleDark5); // スタイルを変更
table.setDisplayHeaderRow(false); // ヘッダー行を非表示にする
// ワークブックを保存
workbook.saveToFile("output/Excelで表を修正.xlsx");
workbook.dispose();
}
}
Java で Excel ワークシートからテーブルを削除する
Worksheet.getListObjects().removeAt(int index) メソッドを使用して、Excel ワークシートからテーブルを削除できます。この操作により、テーブル領域は通常のセル範囲に戻り、関連するフォーマットも削除されます。以下の手順に従って、テーブルを削除します:
- Workbook クラスのインスタンスを作成します。
- Workbook.loadFromFile() メソッドを使用して、既存の Excel ファイルを開きます。
- Workbook.getWorksheets().get() メソッドを使用して、テーブルを含むワークシートを取得します。
- Worksheet.getListObjects().removeAt() メソッドを使用して、インデックスを指定してテーブルを削除します。
- Workbook.saveToFile() メソッドを使用して変更を保存します。
- Java
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class RemoveTableExcel {
public static void main(String[] args) {
// Workbookのインスタンスを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.loadFromFile("output/Excelで表を作成.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.getWorksheets().get(0);
// テーブルを削除
sheet.getListObjects().removeAt(0);
// ワークブックを保存
workbook.saveToFile("output/Excelで表を削除.xlsx");
workbook.dispose();
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。