既存のスタイルを修正する
セルに同じ書式オプションを適用するには、新しい書式スタイルオブジェクトを作成してください。書式スタイルオブジェクトは、フォント、フォントサイズ、インデント、番号、ボーダー、パターンなどの書式の組み合わせであり、名前を付けて保存されたセットです。適用すると、そのスタイルのすべての書式が適用されます。
既存のスタイルを使用して、ブックと共に保存し、同じ属性で情報を書式設定することもできます。
セルが明示的にフォーマットされていない場合、通常スタイル(ワークブックのデフォルトスタイル)が適用されます。Microsoft Excelでは、通常スタイルに加えてComma、Currency、Percentなどのスタイルがいくつか事前に定義されています。
Aspose.Cellsを使用すると、これらのスタイルのいずれか、または独自の属性で定義したスタイルを修正することができます。
Microsoft Excel の使用
Microsoft Excel 97-2003でスタイルを更新するには:
- 書式メニューで スタイル をクリックします。
- スタイル名 リストから変更したいスタイルを選択します。
- 変更 をクリックします。
- 「セルの書式設定」ダイアログのタブを使用して、望むスタイルオプションを選択します。
- OK をクリックします。
- スタイルに含まれるもの で、希望するスタイルの機能を指定します。
- OK をクリックしてスタイルを保存し、選択した範囲に適用します。
Aspose.Cellsの使用
Aspose.Cellsは既存のスタイルを更新するための Style.update メソッドを提供します。
Aspose.Cellsを使用して動的に作成したスタイルまたは事前定義の名前付きスタイルを変更するには、Style.update メソッドを呼び出して、セルや範囲に適用されたスタイルの変更を反映させます。
Style.update メソッドは OK ボタンと同様の挙動を示します。既にセルの範囲にスタイルを適用しており、スタイルの属性を変更し、メソッドを呼び出すと、これらのセルの書式が自動的に更新されます。
スタイルの作成と変更
この例では、スタイルオブジェクトを作成し、セルの範囲に適用し、スタイルオブジェクトを変更します。変更は自動的にセルと適用された範囲に適用されます。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(CreatingStyle.class) + "articles/"; | |
// Create a workbook. | |
Workbook workbook = new Workbook(); | |
// Create a new style object. | |
Style style = workbook.createStyle(); | |
// Set the number format. | |
style.setNumber(14); | |
// Set the font color to red color. | |
style.getFont().setColor(Color.getRed()); | |
// Name the style. | |
style.setName("Date1"); | |
// Get the first worksheet cells. | |
Cells cells = workbook.getWorksheets().get(0).getCells(); | |
// Specify the style (described above) to A1 cell. | |
cells.get("A1").setStyle(style); | |
// Create a range (B1:D1). | |
Range range = cells.createRange("B1", "D1"); | |
// Initialize styleflag object. | |
StyleFlag flag = new StyleFlag(); | |
// Set all formatting attributes on. | |
flag.setAll(true); | |
// Apply the style (described above)to the range. | |
range.applyStyle(style, flag); | |
// Modify the style (described above) and change the font color from red to black. | |
style.getFont().setColor(Color.getBlack()); | |
// Done! Since the named style (described above) has been set to a cell and range,the change would be Reflected(new | |
// modification is implemented) to cell(A1) and //range (B1:D1). | |
style.update(); | |
// Save the excel file. | |
workbook.save(dataDir + "CreatingStyle_out.xls"); |
既存のスタイルの変更
この例では、範囲にすでに適用されているPercentという名前のスタイルが含まれる単純なテンプレートExcelファイルを使用します。具体的な手順は以下の通りです:
- スタイルを取得します。
- スタイルオブジェクトを作成します。
- スタイルフォーマットを変更します。
変更は自動的に適用された範囲に適用されます。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ModifyExistingStyle.class) + "articles/"; | |
/* | |
* Create a workbook. Open a template file. In the book1.xls file, we have applied Microsoft Excel's Named style | |
* i.e., "Percent" to the range "A1:C8". | |
*/ | |
Workbook workbook = new Workbook(dataDir + "book1.xlsx"); | |
// We get the Percent style and create a style object. | |
Style style = workbook.getNamedStyle("Percent"); | |
// Change the number format to "0.00%". | |
style.setNumber(10); | |
// Set the font color. | |
style.getFont().setColor(Color.getRed()); | |
// Update the style. so, the style of range "A1:C8" will be changed too. | |
style.update(); | |
// Save the excel file. | |
workbook.save(dataDir + "ModifyExistingStyle_out.xlsx"); |