チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
Excel では、行、列、セルをコピーすることは基本的な操作であり、ワークシート内や複数のワークシート間でデータを効率的に複製することができます。Java を使用してプログラムで行、列、セルをコピーする方法を理解することで、大量のデータを扱う場合や繰り返し作業を自動化する場合に、データ操作が大幅に効率化されます。本記事では、Spire.XLS for Java を使用して、書式を含めて Excel の行、列、セルをコピーする方法を解説します。
まず、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>
Spire.XLS for Java の Worksheet.copyRow(CellRange sourceRow, Worksheet destSheet, int destRowIndex, EnumSet<CopyRangeOptions> copyOptions) メソッドを使用すると、同一ワークシート内または異なるワークシート間で行を複製することができます。このメソッドの CopyRangeOptions パラメーターを使用することで、コピーする項目(フラグ、条件付き書式、データ検証、数式値のみなど)を細かく制御できます。
以下の手順に従って、異なるワークシート間で書式付きで行をコピーする方法を説明します。
import com.spire.xls.*;
import java.util.EnumSet;
public class CopyRows {
public static void main(String[] args) {
// Workbookオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.loadFromFile("Sample.xlsx");
// ソースワークシートを取得
Worksheet sheet1 = workbook.getWorksheets().get(0);
// 目的のワークシートを取得
Worksheet sheet2 = workbook.getWorksheets().get(1);
// コピーしたい行を取得
CellRange row = sheet1.getRows()[0];
// ソースワークシートの行を目的のワークシートの最初の行にコピー
sheet1.copyRow(row, sheet2, 1, EnumSet.of(CopyRangeOptions.All));
int columns = sheet1.getColumns().length;
// ソース行のセルの列幅を目的行の対応するセルにコピー
for (int i = 0; i < columns; i++) {
double columnWidth = row.getColumns()[i].getColumnWidth();
sheet2.getRows()[0].getColumns()[i].setColumnWidth(columnWidth);
}
// ワークブックをファイルに保存
workbook.saveToFile("output/Excelの行をコピー.xlsx", ExcelVersion.Version2016);
workbook.dispose();
}
}
列を書式付きでコピーする場合、Worksheet.copyColumn(CellRange sourceColumn, Worksheet destSheet, int destColIndex, EnumSet<CopyRangeOptions> copyOptions) メソッドを使用します。以下に詳細な手順を示します。
import com.spire.xls.*;
import java.util.EnumSet;
public class CopyColumns {
public static void main(String[] args) {
// Workbookオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.loadFromFile("Sample.xlsx");
// ソースワークシートを取得
Worksheet sheet1 = workbook.getWorksheets().get(0);
// 目的のワークシートを取得
Worksheet sheet2 = workbook.getWorksheets().get(1);
// コピーしたい列を取得
CellRange column = sheet1.getColumns()[0];
// ソースワークシートの列を目的のワークシートの最初の列にコピー
sheet1.copyColumn(column, sheet2, 1, EnumSet.of(CopyRangeOptions.All));
int rows = column.getRows().length;
// ソース列のセルの行の高さを目的列の対応するセルにコピー
for (int i = 0; i < rows; i++) {
double rowHeight = column.getRows()[i].getRowHeight();
sheet2.getColumns()[0].getRows()[i].setRowHeight(rowHeight);
}
// ワークブックをファイルに保存
workbook.saveToFile("output/Excelの列をコピー.xlsx", ExcelVersion.Version2016);
workbook.dispose();
}
}
Spire.XLS for Java では、CellRange.copy(CellRange destRange, EnumSet<CopyRangeOptions> copyOptions) メソッドを使用して、セル範囲を書式付きでコピーすることも可能です。以下に手順を示します。
import com.spire.xls.*;
import java.util.EnumSet;
public class CopyCells {
public static void main(String[] args) {
// Workbookオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.loadFromFile("Sample.xlsx");
// ソースワークシートを取得
Worksheet sheet1 = workbook.getWorksheets().get(0);
// 宛先ワークシートを取得
Worksheet sheet2 = workbook.getWorksheets().get(1);
// ソースセル範囲を取得
CellRange range1 = sheet1.getCellRange("A1:D5");
// 宛先セル範囲を取得
CellRange range2 = sheet2.getCellRange("A1:D5");
// ソースワークシートのセル範囲を宛先ワークシートのセル範囲にコピー
range1.copy(range2, EnumSet.of(CopyRangeOptions.All));
// ソースセル範囲の行の高さと列の幅を宛先セル範囲にコピー
for (int i = 0; i < range1.getRows().length; i++) {
CellRange row = range1.getRows()[i];
for (int j = 0; j < row.getColumns().length; j++) {
CellRange column = row.getColumns()[j];
range2.getRows()[i].getColumns()[j].setColumnWidth(column.getColumnWidth());
range2.getRows()[i].setRowHeight(row.getRowHeight());
}
}
// ワークブックをファイルに保存
workbook.saveToFile("output/Excelのセル範囲をコピー.xlsx", ExcelVersion.Version2016);
workbook.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
行の高さや列の幅を調整することで、スプレッドシートでのデータの表示を最適化できます。大きなデータセットを扱う場合でも、レポートを作成する場合でも、これらの寸法をカスタマイズすることで、情報を明確かつ簡潔に表示することができます。Excel ワークブックには、手動調整や自動フィットオプションなど、行の高さや列の幅を変更する方法がいくつか用意されています。
この記事では、Spire.XLS for Java ライブラリを使用して、Excel ワークシートの行の高さと列の幅をプログラムで変更する方法について説明します。
まず、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.5.1</version>
</dependency>
</dependencies>
Spire.XLS for Java には、ワークシート内の特定の行の高さと特定の列の幅を調整するための Worksheet.setRowHeight() メソッドと Worksheet.setColumnWidth() メソッドが用意されています。以下は、このタスクを実行するための詳細な手順です。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class SetRowHeightAndColumnWidth {
public static void main(String[] args) {
// Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
// Excel文書をロードする
workbook.loadFromFile("サンプル.xlsx");
// 特定のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
// 選択した行の高さを20に設定する
worksheet.setRowHeight(1,20);
// 選択した列の幅を30に設定する
worksheet.setColumnWidth(4, 30);
// ファイルに保存する
workbook.saveToFile("output/高さと幅の変更.xlsx", ExcelVersion.Version2016);
// リソースを解放する
workbook.dispose();
}
}
ワークシート内のすべての行と列の行の高さと列の幅を変更するには、Worksheet.setDefaultRowHeight() メソッドと Worksheet.setDefaultColumnWidth() メソッドを使用します。以下に詳細な手順を示します。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class SetRowHeightColumnWidthForAll {
public static void main(String[] args) {
// Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
// Excel文書をロードする
workbook.loadFromFile("サンプル.xlsx");
// 特定のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
// デフォルトの行の高さを18に設定する
worksheet.setDefaultRowHeight(18);
// デフォルトの列の幅を15に設定する
worksheet.setDefaultColumnWidth(15);
// ファイルに保存する
workbook.saveToFile("output/すべての高さと幅の変更.xlsx", ExcelVersion.Version2016);
// リソースを解放する
workbook.dispose();
}
}
ワークシートの特定の行や列の内容に合わせて行の高さや列の幅を自動的に調整するには、Worksheet.autoFitRow() メソッドと Worksheet.autoFitColumn() メソッドを使用します。行の高さと列の幅を自動調整する手順は以下のとおりです。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class AutoFitRowHeightAndColumnWidth {
public static void main(String[] args) {
// Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
// Excel文書をロードする
workbook.loadFromFile("サンプル.xlsx");
// 特定のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
// 最初の行の高さを自動調整する
worksheet.autoFitRow(1);
// 2番目の列の幅を自動調整する
worksheet.autoFitColumn(2);
// ドキュメントを保存する
workbook.saveToFile("output/高さと幅の自動調整.xlsx", ExcelVersion.Version2016);
// リソースを解放する
workbook.dispose();
}
}
ワークシートの特定のセル範囲内で行の高さと列の幅を自動的に調整するには、それぞれ CellRange.autoFitRows() メソッドと CellRange.autoFitColumns() メソッドを使用します。以下はその詳細な手順です。
import com.spire.xls.CellRange;
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class AutoFitInRange {
public static void main(String[] args) {
// Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
// Excel文書をロードする
workbook.loadFromFile("サンプル.xlsx");
// 特定のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
// 使用されている範囲を取得する
CellRange cellRange = worksheet.getAllocatedRange();
// または、特定のセル範囲を取得することもできます
// CellRange cellRange = worksheet.getCellRange(1,1,6,4)
// 範囲内の行と列を自動調整する
cellRange.autoFitRows();
cellRange.autoFitColumns();
// ドキュメントを保存する
workbook.saveToFile("output/セル範囲の高さと幅の自動調整.xlsx", ExcelVersion.Version2016);
// リソースを解放する
workbook.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel のワークシートで、データを1つの画面に完全に表示させるために、いくつかの行や列を非表示にする必要があることがある。また、データを完全に表示するために、非表示にした行や列をすべて表示する必要がある場合もあります。この記事では、Spire.XLS for Java を使用して、Java アプリケーションで Excel ワークシート の行や列を隠したり表示したりする方法について説明します。
まず、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.4.4</version>
</dependency>
</dependencies>
詳細な手順は以下の通りです。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class HideRowColumn {
public static void main(String[] args) throws Exception {
// Excelドキュメントをロードする
Workbook wb = new Workbook();
wb.loadFromFile("サンプル.xlsx ");
// 最初のワークシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
// 3番目の列を非表示にする
sheet.hideColumn(3);
// 3番目の行を非表示にする
sheet.hideRow(3);
// ドキュメントを保存する
wb.saveToFile("output/行と列の非表示.xlsx", ExcelVersion.Version2016);
wb.dispose();
}
}
詳細な手順は以下の通りです。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ShowRowColumn {
public static void main(String[] args) throws Exception {
// サンプルドキュメントをロードする
Workbook wb = new Workbook();
wb.loadFromFile("output/行と列の非表示.xlsx");
// 最初のワークシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
// 3番目の列を表示する
sheet.showColumn(3);
// 3番目の行を表示する
sheet.showRow(3);
// ドキュメントを保存する
wb.saveToFile("output/行と列の表示.xlsx", ExcelVersion.Version2016);
wb.dispose();
}
}
詳細な手順は以下の通りです。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class HideMultiRowsColumns {
public static void main(String[] args) throws Exception {
// サンプルドキュメントをロードする
Workbook wb = new Workbook();
wb.loadFromFile("サンプル");
// 最初のワークシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
// 複数の列を非表示にする
sheet.hideColumns(2, 2);
// 複数の行を非表示にする
sheet.hideRows(3, 3);
// ドキュメントを保存する
wb.saveToFile("output/複数の行と列の非表示.xlsx", ExcelVersion.Version2016);
wb.dispose();
}
}
詳細な手順は以下の通りです。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ShowAllRowsColumns {
public static void main(String[] args) throws Exception {
// サンプルドキュメントをロードする
Workbook wb = new Workbook();
wb.loadFromFile("output/複数の行と列の非表示.xlsx");
// 最初のワークシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
// すべての行を走査する
for (int i = 1; i <= sheet.getLastRow(); i++) {
// 行が非表示かどうかを判定する
if (sheet.getRowIsHide(i)) {
// 非表示の行を表示する
sheet.showRow(i);
}
}
// すべての列を走査し、非表示の列を表示する
for (int j = 1; j <= sheet.getLastColumn(); j++) {
if (sheet.getColumnIsHide(j)) {
sheet.showColumn(j);
}
}
// ドキュメントを保存する
wb.saveToFile("output/すべての行と列を表示.xlsx", ExcelVersion.Version2016);
wb.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel ワークシートを操作していると、セル内のテキストが長すぎて一部が隠れてしまうという状況に遭遇することがある。このような場合、テキストを折り返して、すべて見えるようにすることができます。この記事では、Spire.XLS for Java を使用して、Excel セル内のテキストの折り返しまたは折り返し解除方法を示します。
まず、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.2.4</version>
</dependency>
</dependencies>
Spire.XLS for Java は、IStyle インターフェイスによって提供される setWrapText() メソッドを使用した Excel セル内のテキストの折り返しまたは折り返し解除をサポートします。 以下に詳細な手順を示します。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class WrapOrUnwrapText {
public static void main(String[] args) {
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//サンプル Excel ドキュメントをロードする
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//セル「C5」内のテキストを折り返す
sheet.getRange().get("C5").getStyle().setWrapText(true);
//セル「C6」内のテキストの折り返しを解除する
sheet.getRange().get("C6").getStyle().setWrapText(false);
//ドキュメントを別のファイルに保存する
workbook.saveToFile("output/WrapOrUnwrapText.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
MS Excel において、行は左から右にオブジェクトが配置され、行番号で識別されます。一方、列は上から下にオブジェクトが配置され、列番号で識別されます。Excel データを処理する際には、場合によってはデータテーブルに追加の列と行を挿入したり、不要な列と行を削除したりする必要があります。この記事では、Spire.XLS for Java を使用して、Excel で行と列を挿入または削除する方法を示します。
まず、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.11.6</version>
</dependency>
</dependencies>
Spire.XLS for Java が提供する Worksheet.insertRow(int rowIndex) メソッドと Worksheet.insertColumn(int columnIndex) メソッドは、それぞれワークシートへの行と列の挿入をサポートします。 詳細な手順は次のとおりです。
import com.spire.xls.*;
public class InsertRowandColumn {
public static void main(String[] args) throws Exception {
//Workbook インスタンスを作成する
Workbook workbook = new Workbook();
//サンプルExcelファイルをロードする
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//ワークシートに行を挿入する
worksheet.insertRow(4);
//ワークシートに列を挿入する
worksheet.insertColumn(4);
//結果ファイルを保存する
workbook.saveToFile("InsertRowAndColumn.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
Worksheet.insertRow((int rowIndex, int rowCount) メソッドと Worksheet.insertColumn(int columnIndex, int columnCount) メソッドでは、ワークシートへの複数の行または列の挿入もサポートされています。 詳細な手順は次のとおりです。
import com.spire.xls.*;
public class InsertRowsandColumns {
public static void main(String[] args) throws Exception {
//Workbook インスタンスを作成する
Workbook workbook = new Workbook();
//サンプルExcelファイルをロードする
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//ワークシートに複数の行を挿入する
worksheet.insertRow(5, 3);
//ワークシートに複数の列を挿入する
worksheet.insertColumn(4, 2);
//結果ファイルを保存する
workbook.saveToFile("InsertRowsAndColumns.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
Spire.XLS for Java が提供する Worksheet.deleteRow(int rowindex) メソッドと Worksheet.deleteColumn(int columnIndex) メソッドは、それぞれワークシートから行と列の削除をサポートします。 詳細な手順は次のとおりです。
import com.spire.xls.*;
public class DeleteRowColumn {
public static void main(String[] args) throws Exception {
//Workbook インスタンスを作成する
Workbook workbook = new Workbook();
//サンプルExcelファイルをロードする
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//ワークシートから特定の行を削除する
worksheet.deleteRow(4);
//ワークシートから特定の列を削除する
worksheet.deleteColumn(1);
//結果ファイルを保存する
workbook.saveToFile("DeleteRowAndColumn.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
Worksheet.deleteRow(int rowIndex, int rowCount) メソッドと Worksheet.deleteColumn(int columnIndex, int columnCount) メソッドでは、ワークシートから複数の行または列の削除もサポートされています。 詳細な手順は次のとおりです。
import com.spire.xls.*;
public class DeleteRowColumn {
public static void main(String[] args) throws Exception {
//Workbook インスタンスを作成する
Workbook workbook = new Workbook();
//サンプルExcelファイルをロードする
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//ワークシートから複数の行を削除する
worksheet.deleteRow(5, 3);
//ワークシートから複数の列を削除する
worksheet.deleteColumn(5, 2);
//結果ファイルを保存する
workbook.saveToFile("DeleteRowsAndColumns.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
大量のデータを含む Excel ドキュメントを処理する際には、特定の情報を簡単に見つけるために、特定のセルに背景色やパターンを設定することができます。Microsoft Excel では、「塗りつぶしの色」をクリックするだけで、この機能を実現できます。この記事では、Spire.XLS for Java を使用して、Excel で指定したセルまたはセル範囲の背景色とパターンスタイルをプログラムで設定する方法を示します。
まず、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.11.6</version>
</dependency>
</dependencies>
Spire.XLS for Java が提供する CellRange.getStyle().setColor() メソッドと CellRange.getStyle().setFillPattern() メソッドは、それぞれ指定されたセル範囲の背景色とパターン スタイルの設定をサポートします。詳細な手順は次のとおりです。
import com.spire.xls.*;
import java.awt.*;
public class CellBackground {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//サンプル Excel ドキュメントを読み込む
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet= workbook.getWorksheets().get(0);
//「A1:E1」と「A2:A10」の背景色を設定する
worksheet.getRange().get("A1:E1").getStyle().setColor(Color.green);
worksheet.getRange().get("A2:A10").getStyle().setColor(Color.yellow);
//「E8」の背景色を設定する
worksheet.getRange().get("E8").getStyle().setColor(Color.red);
//「C4:D5」の塗りつぶしパターンのスタイルを設定する
worksheet.getRange().get("C4:D5").getStyle().setFillPattern(ExcelPatternType.Percent25Gray);
//結果文書を保存する
workbook.saveToFile("CellBackground.xlsx", ExcelVersion.Version2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
セル範囲の複製は、スプレッドシート管理の基本的で非常に役に立つ機能であり、ユーザーは簡単に指定した位置にデータ、書式設定、数式などのセルの範囲を複製できます。これにより、ユーザーはスプレッドシート全体で同一のコンテンツを効率的に複製しながら、入力エラーの可能性を減らすことができます。重要なのは、セル範囲を複製する際に、セル間の相対的な関係が保持され、複製されたデータと元のデータとの一貫性が確保されることです。そのため、この機能はファイルのバックアップやテンプレート作成などのタスクに非常に価値があり、スプレッドシートには欠かせないツールとなっています。この記事では、Spire.XLS for Java を使用して Excel でセル範囲を複製する方法を紹介します。
まず、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.copy() メソッドが用意されています。以下は詳細な手順です。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class CopyRow {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook wb = new Workbook();
//ディスクからExcelファイルをロードする
wb.loadFromFile("sample.xlsx", ExcelVersion.Version2013);
//最初のシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
//ソース範囲とターゲット範囲を取得する
CellRange sourceRange = sheet.getCellRange("A1:E1");
CellRange destRange = sheet.getCellRange("A10:E10");
//特定のセル範囲をシートに複製する
sheet.copy (sourceRange,destRange,true);
//結果ファイルを保存する
wb.saveToFile("CopyRangeWithinSheet.xlsx", ExcelVersion.Version2013);
wb.dispose();
}
}
Spire.XLS for Java ライブラリを使用すると、セル範囲をあるシートから別のシートに簡単に複製することもできます。以下は、異なるワークシート間でセル範囲を複製する手順です。
import com.spire.xls.CellRange;
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class CopyRow {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook wb = new Workbook();
//ディスクからExcelファイルをロードする
wb.loadFromFile("sample.xlsx", ExcelVersion.Version2013);
//最初のシートを取得する
Worksheet sheet1 = wb.getWorksheets().get(0);
//2番目のシートを取得する
Worksheet sheet2 = wb.getWorksheets().get(1);
//ソース範囲とターゲット範囲を取得する
CellRange sourceRange = sheet1.getCellRange("A1:E1");
CellRange destRange = sheet2.getCellRange("A1:E1");
//特定のセル範囲をsheet1からsheet2に複製する
sheet1.copy (sourceRange,destRange,true);
//sheet2の列幅を自動調整する
for (int i = 0; i < 8; i++) {
sheet2.autoFitColumn(i+1);
}
//結果ファイルを保存する
wb.saveToFile("CopyRangeBetweenSheets.xlsx", ExcelVersion.Version2013);
wb.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
ワークシートを作成またはレビューする際に、重要な情報を強調表示するために、特定のセルのフォントスタイルを変更する必要がある場合があります。例えば、テキストに異なるフォントタイプやサイズ、カラーを適用することができます。また、テキストを太字や斜体に設定することもできます。この記事では、Spire.XLS for Java を使用して Excel セルにフォントスタイルを適用する方法を紹介します。
まず、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.4.1</version>
</dependency>
</dependencies>
Spire.XLS によって提供される ExcelFont クラスを使用すると、セル内のフォント名、色、サイズ、およびスタイルを設定または変更できます。以下は、Spire.XLS for Java を使用して特定のセルにフォントスタイルを適用する手順です。
Spire.XLS for Java を使用して特定のセルにフォントスタイルを適用する手順です。
import com.spire.xls.ExcelVersion;
import com.spire.xls.FontUnderlineType;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
import java.awt.*;
public class ApplyFontToCell {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//フォント名を設定する
sheet.getCellRange("B1").setText("フォント名: Yu Mincho ");
sheet.getCellRange("B1").getCellStyle().getExcelFont().setFontName("Yu Mincho ");
//フォントサイズを設定する
sheet.getCellRange("B2").setText("フォントサイズ: 20");
sheet.getCellRange("B2").getCellStyle().getExcelFont().setSize(20);
//フォント色を設定する
sheet.getCellRange("B3").setText("フォント色: 赤色");
sheet.getCellRange("B3").getCellStyle().getExcelFont().setColor(Color.red);
//テキストを太字に設定する
sheet.getCellRange("B4").setText("フォントスタイル: 太字");
sheet.getCellRange("B4").getCellStyle().getExcelFont().isBold(true);
//テキストを斜体に設定する
sheet.getCellRange("B5").setText("フォントスタイル: 斜体");
sheet.getCellRange("B5").getCellStyle().getExcelFont().isItalic(true);
//テキストに下線を追加する
sheet.getCellRange("B6").setText("フォントスタイル: 下線");
sheet.getCellRange("B6").getCellStyle().getExcelFont().setUnderline(FontUnderlineType.Single);
//テキストに削除線を追加する
sheet.getCellRange("B7").setText("フォントスタイル: 削除線");
sheet.getCellRange("B7").getCellStyle().getExcelFont().isStrikethrough(true);
//結果ファイルに保存する
workbook.saveToFile("output/ApplyFontToCell.xlsx", ExcelVersion.Version2016);
}
}
単一の Excel セルに複数のフォントを適用することで、特定の文字を強調するのに役立ちます。以下は、Spire.XLS for Java を使用して単一のセルに複数のフォントを適用する手順です。
import com.spire.xls.*;
import java.awt.*;
public class ApplyMultipleFontsToCell {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook wb = new Workbook();
//最初のシートを取得する
Worksheet sheet = wb.getWorksheets().get(0);
//ExcelFontオブジェクトを作成する
ExcelFont font1 = wb.createFont();
font1.setFontName("Arial Black");
font1.setColor(Color.blue);
font1.setSize(13f);
font1.isBold(true);
//別のExcelFontオブジェクトを作成する
ExcelFont font2 = wb.createFont();
font2.setFontName("Yu Mincho");
font2.setColor(Color.red);
font2.setSize(15f);
font2.isBold(true);
font2.isItalic(true);
//テキストをセルB 5に書き込む
RichText richText = sheet.getCellRange("B5").getRichText();
richText.setText("Excelを処理するためのスタンドアロン型 Java API");
//セルB 5のテキストに2スタイルのフォントを適用する
richText.setFont(0, 12, font1);
richText.setFont(13, 30, font2);
//結果ファイルに保存する
wb.saveToFile("output/ApplyMultipleFontsToCell.xlsx", ExcelVersion.Version2016);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel ドキュメントでは、コピーして貼り付けてセルの値を取得できます。また、Java コードで自動的に取得することもできます。この方法は時間の節約と効率の向上だけでなく、間違いを回避することもできます。この記事では、Spire.XLS for Java を使用して Excel でセル名によるセル値を取得する方法を紹介します。
まず、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.3.6</version>
</dependency>
</dependencies>
Spire.XLS for Java が提供する Worksheet.getRange().get() メソッドは、セル名で指定されたセルを取得することをサポートしています。また、CellRange.getValue() メソッドでは、セルの値の取得がサポートされています。具体的な手順は以下の通りです。
import com.spire.xls.*;
public class GetCellValue {
public static void main(String[] args) {
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excel のサンプル ドキュメントを読み込む
workbook.loadFromFile( "sample.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//セル名で指定したセルを取得する
CellRange cell = sheet.getRange().get("D6");
//StringBuilderインスタンスを作成する
StringBuilder content = new StringBuilder();
//セル「D 6」の値を取得する
content.append("The value of cell D6 is: " + cell.getValue()+"\n");
//結果を出力する
System.out.println(content);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
自動調整は Microsoft Excel が提供する実用的な機能で、さまざまなデータに対応するようにセルのサイズを自動的に調整できます。 クリックするだけで、列の幅と行の高さを手動で調整しなくても、セル内のすべてのデータがはっきりと見えるようになります。この記事では、Spire.XLS for Java を使用して Excel で 列の幅と行の高さを自動調整する方法を紹介します。
まず、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.2.4</version>
</dependency>
</dependencies>
Spire.XLS for Java によって提供される CellRange.autoFitColumns() と CellRange.autoFitRows() メソッドは、Excel で列の幅と行の高さを自動的に調整することをサポートしています。詳細な手順は次のとおりです。
import com.spire.xls.*;
public class AutoFitColumn {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.loadFromFile("E:\\Files\\Test.xlsx");
//最初のシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//列の幅と行の高さを自動調整する
worksheet.getAllocatedRange().autoFitColumns();
worksheet.getAllocatedRange().autoFitRows();
//結果ファイルに保存する
workbook.saveToFile("AutoFitCell.xlsx", ExcelVersion.Version2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。