セルフォーマット

セルにボーダーを追加する

Microsoft Excelは、ユーザーがセルに枠線を追加して書式設定することを可能にします。

Microsoft Excelでの枠線設定

todo:image_alt_text

枠線の種類は追加する位置によって異なります。例えば、上部の枠線はセルの上部に追加されます。ユーザーはまた、枠線の線種や色を変更することができます。

Aspose.Cellsを使用すると、開発者はMicrosoft Excelと同様に柔軟な方法で枠線を追加し、見た目をカスタマイズすることができます。

セルにボーダーを追加する

Aspose.Cellsは、Microsoft Excelファイルを表すWorkbookクラスを提供します。Workbookクラスには、Excelファイル内の各ワークシートにアクセスすることを可能にするWorksheetCollectionが含まれています。ワークシートはWorksheetクラスによって表されます。WorksheetクラスにはCellsコレクションがあります。Cellsコレクションの各アイテムはCellクラスのオブジェクトを表します。

Aspose.Cellsは、セルのフォーマット設定に使用されるsetStyleメソッドを持つCellクラスを提供します。また、Styleクラスのオブジェクトを使用し、フォント設定を構成するためのプロパティを提供します。

セルに罫線を追加

StyleオブジェクトのsetBorderメソッドを使用して、セルに罫線を追加します。罫線の種類はパラメータとして渡します。すべての罫線タイプはBorderType列挙体に事前定義されています。

境界タイプ 説明
BOTTOM_BORDER 下罫線
DIAGONAL_DOWN 左上から右下への斜線
DIAGONAL_UP 左下から右上への斜線
LEFT_BORDER 左罫線
RIGHT_BORDER 右罫線
TOP_BORDER 上罫線
HORIZONTAL 条件付き書式などの動的スタイルにだけ適用されます。
VERTICAL 条件付き書式などの動的スタイルにだけ適用されます。
ラインの色を設定するには、Color列挙体を使用して色を選択し、それをStyleオブジェクトのsetBorderメソッドのColorパラメータに渡してください。線のスタイルはCellBorderType列挙体に事前定義されています。
線のスタイル 説明
DASH_DOT 細い点線
DASH_DOT_DOT 細い点線と点線の組み合わせ
DASHED 破線を表します
DOTTED 点線を表します
DOUBLE 二重線を表します
HAIR 髪線を表します
MEDIUM_DASH_DOT 中太の点線
MEDIUM_DASH_DOT_DOT 中程度のダッシュドット線を表す
MEDIUM_DASHED 中程度の破線を表す
NONE ラインなしを表します
MEDIUM 中央のラインを表します
SLANTED_DASH_DOT 斜めの中程度のダッシュドット線を表す
THICK 太いラインを表します
THIN 細いラインを表します
上記の線スタイルのいずれかを選択し、それを Style オブジェクトの setBorder メソッドに設定します。

以下は、以下のコードを実行した際に生成される出力です。

セルのすべての側に適用される境界線

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Path to source file
String dataDir = Utils.getSharedDataDir(AddingBordersToCells.class) + "data/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Accessing the added worksheet in the Excel file
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
Cells cells = worksheet.getCells();
// Accessing the "A1" cell from the worksheet
Cell cell = cells.get("A1");
// Adding some value to the "A1" cell
cell.setValue("Visit Aspose!");
Style style = cell.getStyle();
// Setting the line of the top border
style.setBorder(BorderType.TOP_BORDER, CellBorderType.THICK, Color.getBlack());
// Setting the line of the bottom border
style.setBorder(BorderType.BOTTOM_BORDER, CellBorderType.THICK, Color.getBlack());
// Setting the line of the left border
style.setBorder(BorderType.LEFT_BORDER, CellBorderType.THICK, Color.getBlack());
// Setting the line of the right border
style.setBorder(BorderType.RIGHT_BORDER, CellBorderType.THICK, Color.getBlack());
// Saving the modified style to the "A1" cell.
cell.setStyle(style);
// Saving the Excel file
workbook.save(dataDir + "ABToCells_out.xls");

セルの範囲に境界線を追加する

複数のセル範囲に境界線を追加することも可能です。最初に、Cellsコレクションの createRange メソッドを呼び出してセル範囲を作成します。これには次のパラメータを使用します:

  • First Row:範囲の最初の行。
  • First Column:範囲の最初の列。
  • Number of Rows:範囲内の行数。
  • Number of Columns:範囲内の列数。

createRange メソッドは指定された範囲を含む Range オブジェクトを返します。この Range オブジェクトは setOutlineBorders メソッドを提供し、次のパラメータを取ります:

  • CellBorderType:選択された境界線スタイル、CellBorderType列挙型から選択。
  • Color:境界線の色、Color列挙型から選択。

以下は、以下のコードを実行した際に生成される出力です。

セルの範囲に適用される境界線

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Path to source file
String dataDir = Utils.getSharedDataDir(AddingBordersToCells.class) + "data/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Adding a new worksheet to the Workbook object Obtaining the reference of the newly added worksheet
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
// Accessing the "A1" cell from the worksheet
Cell cell = worksheet.getCells().get("A1");
// Adding some value to the "A1" cell
cell.setValue("Hello World From Aspose");
// Creating a range of cells starting from "A1" cell to 3rd column in a
// row
Range range = worksheet.getCells().createRange(0, 0, 1, 2);
range.setName("MyRange");
// Adding a thick outline border with the blue line
range.setOutlineBorders(CellBorderType.THICK, Color.getBlue());
// Saving the Excel file
workbook.save(dataDir + "ABToRange_out.xls");

色とパレット

パレットとは、画像を作成するために使用可能な色の数です。プレゼンテーションで標準化されたパレットを使用することで、ユーザーは一貫した外観を作成できます。各 Microsoft Excel (97-2003) ファイルには、セル、フォント、グリッド線、グラフィックオブジェクト、塗りつぶし、およびグラフの線に適用できる 56 色のパレットがあります。

Microsoft Excelのパレット設定

todo:image_alt_text

Aspose.Cellsでは既存の色だけでなく、カスタム色も使用することができます。カスタム色を使用する前に、パレットに追加してください。このトピックでは、パレットにカスタム色を追加する方法について説明します。

パレットにカスタム色を追加

Aspose.Cellsは、56色のパレットもサポートしています。標準カラーパレットは上記に表示されます。パレットに定義されていないカスタム色を使用したい場合は、その色を使用する前にパレットに追加する必要があります。

Aspose.Cells は Microsoft Excel ファイルを表す Workbook クラスを提供します。このクラスには次のパラメータを取る changePalette メソッドがあります。カスタムカラーを追加してパレットを変更します:

  • カスタムカラー:パレットに追加されるカスタムカラー。
  • インデックス:カスタムカラーで置き換えられる色のインデックス。0〜55の間である必要があります。

以下の例では、フォントに適用する前に、カスタムカラーをパレットに追加します。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Path to source file
String dataDir = Utils.getSharedDataDir(ColorsAndPalette.class) + "data/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Adding custom color to the palette at 55th index
Color color = Color.fromArgb(212, 213, 0);
workbook.changePalette(color, 55);
// Obtaining the reference of the newly added worksheet by passing its sheet index
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
// Accessing the "A1" cell from the worksheet
Cell cell = worksheet.getCells().get("A1");
// Adding some value to the "A1" cell
cell.setValue("Hello Aspose!");
// Setting the custom color to the font
Style style = cell.getStyle();
Font font = style.getFont();
font.setColor(color);
cell.setStyle(style);
// Saving the Excel file
workbook.save(dataDir + "ColorsAndPalette_out.xls");

色と背景パターン

Microsoft Excelはセルの前景(アウトライン)と背景(塗りつぶし)の色、および背景パターンを設定することができます。

Microsoft Excelでの色と背景パターンの設定

todo:image_alt_text

Aspose.Cells もこれらの機能を柔軟にサポートしています。このトピックでは、Aspose.Cells を使用してこれらの機能を使用する方法について学びます。

色と背景パターンの設定

Aspose.Cellsは、Microsoft Excelファイルを表すWorkbookクラスを提供します。Workbookクラスには、Excelファイル内のそれぞれのワークシートにアクセスを許可するWorksheetCollectionが含まれています。ワークシートは、Worksheetクラスによって表されます。Worksheetクラスでは、Cellsコレクションが提供されます。Cellsコレクションの各アイテムは、Cellクラスのオブジェクトを表します。

Aspose.Cells は、セルの書式設定に使用される Cell クラスの setStyle メソッドを提供します。また、Style クラスのオブジェクトを使用してフォント設定を構成できます。

setForegroundColorプロパティはセルのシェーディング色を設定します。

setPatternプロパティは、前景色または背景色に使用する背景パターンを指定します。Aspose.Cellsは、BackgroundType列挙型を提供しており、一連の事前定義された背景パターンのタイプが含まれています。

パターンタイプ 説明
DIAGONAL_CROSSHATCH 斜め格子模様を表す
DIAGONAL_STRIPE 斜めストライプパターンを表す
GRAY_6 6.25%のグレーパターンを表す
GRAY_12 12.5%のグレーパターンを表す
GRAY_25 25%のグレーパターンを表す
GRAY_50 50%のグレーパターンを表す
GRAY_75 75%のグレーパターンを表す
HORIZONTAL_STRIPE 水平ストライプ模様を表す
NONE 背景なしを表します
REVERSE_DIAGONAL_STRIPE 逆斜めストライプ模様を表す
SOLID 一色のパターンを表します
THICK_DIAGONAL_CROSSHATCH 太い斜め格子模様を表す
THIN_DIAGONAL_CROSSHATCH 細い斜め格子模様を表す
THIN_DIAGONAL_STRIPE 細い斜めストライプ模様を表す
THIN_HORIZONTAL_CROSSHATCH 細い水平格子模様を表す
THIN_HORIZONTAL_STRIPE 細い水平ストライプ模様を表す
THIN_REVERSE_DIAGONAL_STRIPE 細い逆斜めストライプ模様を表す
THIN_VERTICAL_STRIPE 細い縦ストライプ模様を表す
VERTICAL_STRIPE 垂直ストライプ模様を表す
以下の例では、A1セルの前景色が設定されていますが、A2は前景色と背景色の両方を垂直ストライプの背景パターンで構成するように設定されています。

コードを実行すると、次の出力が生成されます。

前景色と背景色が背景パターンを持つセルに適用されます

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
String dataDir = Utils.getSharedDataDir(ColorsAndBackground.class) + "data/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Accessing the added worksheet in the Excel file
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
Cells cells = worksheet.getCells();
// Accessing the "A1" cell from the worksheet
Cell cell = cells.get("A1");
Style style = cell.getStyle();
// Setting the foreground color to yellow
style.setBackgroundColor(Color.getYellow());
// Setting the background pattern to vertical stripe
style.setPattern(BackgroundType.VERTICAL_STRIPE);
// Saving the modified style to the "A1" cell.
cell.setStyle(style);
// Accessing the "A2" cell from the worksheet
cell = cells.get("A2");
style = cell.getStyle();
// Setting the foreground color to blue
style.setBackgroundColor(Color.getBlue());
// Setting the background color to yellow
style.setForegroundColor(Color.getYellow());
// Setting the background pattern to vertical stripe
style.setPattern(BackgroundType.VERTICAL_STRIPE);
// Saving the modified style to the "A2" cell.
cell.setStyle(style);
// Saving the Excel file
workbook.save(dataDir + "ColorsAndBackground_out.xls");

重要なこと

セル内の選択された文字のフォーマット設定

フォント設定の処理では、セルのコンテンツ全体のフォーマット設定のみが説明されています。選択した文字のみをフォーマット設定するにはどうすればよいですか?

Aspose.Cellsはこの機能をサポートしています。このトピックでは、この機能の使用方法について説明します。

選択された文字のフォーマット設定

Aspose.Cellsは、Microsoft Excelファイルを表すWorkbookクラスを提供します。Workbookクラスには、Excelファイル内のそれぞれのワークシートにアクセスを許可するWorksheetCollectionが含まれています。ワークシートは、Worksheetクラスによって表されます。Worksheetクラスでは、Cellsコレクションが提供されます。Cellsコレクションの各アイテムは、Cellクラスのオブジェクトを表します。

Cellクラスは次のパラメータを取る charactersメソッドを提供し、セル内の文字の範囲を選択します:

  • 開始インデックス:選択を開始する文字のインデックス。
  • 文字数、選択する文字数。

出力ファイルでは、A1"セルでは、単語’Visit’はデフォルトのフォントでフォーマットされ、‘Aspose!‘は太字で青色にフォーマットされています。

選択された文字のフォーマット設定

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Path to source file
String dataDir = Utils.getSharedDataDir(FormattingSelectedCharacters.class) + "data/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Accessing the added worksheet in the Excel file
int sheetIndex = workbook.getWorksheets().add();
Worksheet worksheet = workbook.getWorksheets().get(sheetIndex);
Cells cells = worksheet.getCells();
// Adding some value to the "A1" cell
Cell cell = cells.get("A1");
cell.setValue("Visit Aspose!");
Font font = cell.characters(6, 7).getFont();
// Setting the font of selected characters to bold
font.setBold(true);
// Setting the font color of selected characters to blue
font.setColor(Color.getBlue());
// Saving the Excel file
workbook.save(dataDir + "FSCharacters_out.xls");

高度なトピック