チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
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.borderInside() と CellRange.borderAround() メソッドでは、指定した範囲の内側と外側に罫線を追加することができます。BordersCollection.getByBordersLineType(BordersLineType index).setLineStyle (LineStyleType lineStyleType) メソッドでは、上罫線、下罫線、左罫線、右罫線、および対角罫線の追加することができます。具体的な手順は以下の通り。
import com.spire.xls.*;
import java.awt.*;
public class AddBorders {
public static void main(String[] args){
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.loadFromFile("D:\\Files\\Input.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//範囲「A2:E8」に罫線を追加する
CellRange range1= sheet.getCellRange("A2:E8");
range1.borderInside(LineStyleType.Thin, Color.GREEN);
range1.borderAround(LineStyleType.Medium, Color.GREEN);
//範囲「A15:E15」に罫線を追加する
CellRange range2= sheet.getCellRange("A15:E15");
range2.getBorders().setLineStyle(LineStyleType.Double);
range2.getBorders().setColor(Color.BLUE);
//範囲「A15:E15」の対角罫線スタイルを設定する
range2.getBorders().getByBordersLineType(BordersLineType.DiagonalDown).setLineStyle(LineStyleType.None);
range2.getBorders().getByBordersLineType(BordersLineType.DiagonalUp).setLineStyle(LineStyleType.None);
//結果ファイルに保存する
workbook.saveToFile("SetBorder.xlsx", ExcelVersion.Version2010);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するには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>13.2.4</version>
</dependency>
</dependencies>
Spire.XLS for Java を使用すると、値をセル範囲に追加し、指定したデータ範囲をデータ検証ソースとして参照して、ドロップダウンリストを作成できます。この方法は少し時間がかかりますが、結果ドキュメントのセルの値を直接変更することで、ドロップダウンリストの項目を簡単に更新できます。以下は具体的な操作手順です。
import com.spire.xls.*;
public class DropdownList {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//Excelドキュメントをロードする
workbook.loadFromFile("input.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//指定したセルに値を追加する
sheet.getCellRange("A10").setValue("テニス");
sheet.getCellRange("A11").setValue("バスケットボール");
sheet.getCellRange("A12").setValue("サッカー");
//指定したデータ範囲をデータ検証ソースとして参照することにより、ドロップダウンリストを作成する
sheet.getCellRange("C2:C7").getDataValidation().setDataRange(sheet.getCellRange("A10:A12"));
//結果ドキュメントを保存する
workbook.saveToFile("ExcelDropdownList.xlsx", ExcelVersion.Version2013);
}
}
Excel では、「データ検証」の「ソース」に値リストを手動で入力することでドロップダウンリストを作成できます。この方法では、Excel のセルにデータを追加する必要がないため、ドキュメントもより整然としています。次の手順では、Spire.XLS for Java を使用して同じ機能を実行する方法を説明します。
import com.spire.xls.*;
public class DropdownList2 {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//セルB 2にテキストを追加してフォントスタイルを設定する
sheet.getCellRange("B2").setValue("興味");
sheet.getCellRange("B2").getStyle().getFont().isBold(true);
sheet.getCellRange("B2").getStyle().setKnownColor(ExcelColors.LightTurquoise);
//セルC2にドロップダウンリストを作成する
sheet.getCellRange("C2").getDataValidation().setValues(new String[]{"テニス", "バスケットボール", "サッカー"});
//結果ドキュメントを保存する
workbook.saveToFile("ExcelDropdownList2.xlsx", ExcelVersion.Version2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel でセルの結合とは、2つ以上の隣接するセルを複数行または複数列にまたがる大きなセルに結合することです。この機能は、セル範囲の中央に揃えるタイトルやラベルを作成するためによく使用されます。この記事では、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 が提供する XlsRange.merge() メソッドは、指定したセル範囲を結合することをサポートします。詳細な手順は次のとおりです。
import com.spire.xls.*;
public class MergeCells {
public static void main(String[] args){
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excel ドキュメントをロードする
workbook.loadFromFile("input.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//指定された範囲のセルを結合する
sheet.getRange().get("A2:A6").merge();
sheet.getRange().get("A7:A11").merge();
//水平方向の配置を「中央揃え」に設定する
sheet.getRange().get("A2").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);
sheet.getRange().get("A7").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);
//垂直方向の配置を「中央揃え」に設定する
sheet.getRange().get("A2").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
sheet.getRange().get("A7").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
//結果ドキュメントを保存する
workbook.saveToFile("MergeCells.xlsx", FileFormat.Version2013);
}
}
Spire.XLS for Java が提供する XlsRange.unMerge() メソッドは、指定したセルの結合を解除することをサポートします。詳細な手順は次のとおりです。
import com.spire.xls.FileFormat;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class UnmergeCells {
public static void main(String[] args){
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelドキュメントをロードする
workbook.loadFromFile("MergeCells.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//指定したセルの結合を解除する
sheet.getRange().get("A2:A6").unMerge();
//結果ドキュメントを保存する
workbook.saveToFile("UnMergeCells.xlsx", FileFormat.Version2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するには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>12.10.3</version>
</dependency>
</dependencies>
詳細な手順は次のとおりです。
import com.spire.xls.*;
public class DataValidation {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//最初のワークシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//セルにテキストを挿入する
sheet.getCellRange("B2").setText("番号の入力規則:");
sheet.getCellRange("B4").setText("日付の入力規則:");
sheet.getCellRange("B6").setText("テキストの長さの入力規則:");
sheet.getCellRange("B8").setText("リストの入力規則:");
sheet.getCellRange("B10").setText("時間の入力規則:");
// C2に番号の入力規則を追加する
CellRange rangeNumber = sheet.getCellRange("C2");
rangeNumber.getDataValidation().setAllowType(CellDataType.Integer);
rangeNumber.getDataValidation().setCompareOperator(ValidationComparisonOperator.Between);
rangeNumber.getDataValidation().setFormula1("1");
rangeNumber.getDataValidation().setFormula2("10");
rangeNumber.getDataValidation().setInputMessage("1 ~ 10の数値を入力します");
rangeNumber.getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
// C4に日付の入力規則を追加する
CellRange rangeDate = sheet.getCellRange("C4");
rangeDate.getDataValidation().setAllowType(CellDataType.Date);
rangeDate.getDataValidation().setCompareOperator(ValidationComparisonOperator.Between);
rangeDate.getDataValidation().setFormula1("1/1/2010");
rangeDate.getDataValidation().setFormula2("12/31/2020");
rangeDate.getDataValidation().setInputMessage("2010年1月1日から2020年12月31日までの日付を入力します");
rangeDate.getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
// C6にテキストの長さの入力規則を追加する
CellRange rangeTextLength = sheet.getCellRange("C6");
rangeTextLength.getDataValidation().setAllowType(CellDataType.TextLength);
rangeTextLength.getDataValidation().setCompareOperator(ValidationComparisonOperator.LessOrEqual);
rangeTextLength.getDataValidation().setFormula1("5");
rangeTextLength.getDataValidation().setInputMessage("5文字未満のテキストを入力します");
rangeTextLength.getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
// C8にのリストの入力規則を適用する
CellRange rangeList = sheet.getCellRange("C8");
rangeList.getDataValidation().setValues(new String[]{ "アメリカ", "カナダ", "イギリス", "ドイツ" });
rangeList.getDataValidation().isSuppressDropDownArrow(false);
rangeList.getDataValidation().setInputMessage("リストから項目を選択します");
rangeList.getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
// C10にの時間の入力規則を適用する
CellRange rangeTime= sheet.getCellRange("C10");
rangeTime.getDataValidation().setAllowType(CellDataType.Time);
rangeTime.getDataValidation().setCompareOperator(ValidationComparisonOperator.Between);
rangeTime.getDataValidation().setFormula1("9:00");
rangeTime.getDataValidation().setFormula2("12:00");
rangeTime.getDataValidation().setInputMessage("9:00 ~ 12:00の時刻を入力します");
rangeTime.getCellStyle().setKnownColor(ExcelColors.Gray25Percent);
//列2の幅を自動調整する
sheet.autoFitColumn(2);
//列3の幅を設定する
sheet.setColumnWidth(3, 20);
//ブックをExcelファイルに保存する
workbook.saveToFile("output/ApplyDataValidation.xlsx", ExcelVersion.Version2016);
}
}
詳細な手順は次のとおりです。
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
import java.awt.*;
public class RemoveDataValidation {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//Excelファイルをロードする
workbook.loadFromFile("C:\\Users\\Administrator\\Desktop\\ApplyDataValidation.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//特定のセル範囲を検索するためにRectangleオブジェクトの配列を作成する
Rectangle[] rectangles = new Rectangle[]{
// Rectangle(columnIndex, rowIndex) は特定のセルを指定し、列または行のインデックスは 0 から始まる
// Rectangle(startColumnIndex, startRowIndex, endColumnIndex, endRowIndex)を使用してセル範囲を指定する
new Rectangle(2,1),
new Rectangle(2,3),
new Rectangle(2,5),
new Rectangle(2,7),
new Rectangle(2,9)
};
//特定のセル範囲にデータの入力規則を削除する
worksheet.getDVTable().remove(rectangles);
//ブックをExcelファイルに保存する
workbook.saveToFile("output/RemoveDataValidation.xlsx");
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。