セルフォーマット

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

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は、CellクラスのsetStyleメソッドを提供し、セルの書式設定スタイルを設定するために使用されます。また、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");

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

1つのセルに追加するのではなく、セルの範囲に境界線を追加することが可能です。まず、CellsコレクションのcreateRangeメソッドを呼び出し、次のパラメータを取るセルの範囲を作成します。

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

createRangeメソッドは、指定された範囲を含むRangeオブジェクトを返します。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");

高度なトピック