この記事では、Excel JavaScript API を使用して範囲内のセルの書式設定を設定するコード サンプルを提供します。 書式設定には、フォント、色、数値形式、罫線、配置が含まれます。
Range オブジェクトがサポートするプロパティとメソッドの完全な一覧については、「Excel.Range クラス」を参照してください。
注:
Excel JavaScript API には、"Cell" オブジェクトまたはクラスがありません。 代わりに、Excel JavaScript API はすべての Excel セルを Range オブジェクトとして定義します。 Excel UI の個々のセルは、Excel JavaScript API の 1 つのセルを持つ Range オブジェクトに変換されます。 1 つの Range オブジェクトに複数の連続したセルを含めることもできます。 詳しくは、「Excel JavaScript API を使用したセルの操作」を参照してください。
重要な点
-
Range.formatを使用して、フォント、塗りつぶし、罫線、配置などの書式設定プロパティにアクセスします。 - 色名または 16 進コードを使用して
format.fill.colorとformat.font.colorを設定します。 -
numberFormatを使用して、数値、日付、通貨の表示方法を制御します。 - 書式設定の変更は、セル値には影響せず、外観にのみ影響します。
フォントの色と塗りつぶしの色を設定する
Range.format.fontプロパティと Range.format.fill プロパティは、テキストと背景色を制御します。 "red" や "white" などの色名、または "#4472C4" のような 16 進色コードを使用します。
次のコード サンプルは、範囲 B2:E2 のセルのフォントの色と塗りつぶしの色を設定します。
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
let range = sheet.getRange("B2:E2");
range.format.fill.color = "#4472C4";
range.format.font.color = "white";
await context.sync();
});
フォントの色と塗りつぶしの色を設定する前の範囲内のデータ
フォントの色と塗りつぶしの色を設定した後の範囲内のデータ
数値の書式を設定する
numberFormat プロパティは、セル内の値の表示方法を制御します。 数値書式コードは、Excel の書式設定構文に従います。 一般的な形式には、小数の場合は "0.00"、通貨の場合は "$#,###0.00"、日付の場合は "m/d/yyyy" があります。
次のコード サンプルでは、 D3:E5 の範囲のセルの数値形式を小数点以下 2 桁に設定します。
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
let formats = [
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"]
];
let range = sheet.getRange("D3:E5");
range.numberFormat = formats;
await context.sync();
});
数値の書式を設定する前の範囲内のデータ
数値の書式を設定した後の範囲内のデータ
フォント プロパティを設定する
太字、斜体、サイズ、フォント名など、さまざまなフォント プロパティを設定します。
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getActiveWorksheet();
let range = sheet.getRange("B2:E2");
range.format.font.bold = true;
range.format.font.italic = true;
range.format.font.size = 14;
range.format.font.name = "Arial";
await context.sync();
});
セルの配置を設定する
horizontalAlignmentプロパティと verticalAlignment プロパティは、セル内でのコンテンツの配置方法を制御します。
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
let range = sheet.getRange("A1:E1");
range.format.horizontalAlignment = Excel.HorizontalAlignment.center;
range.format.verticalAlignment = Excel.VerticalAlignment.center;
await context.sync();
});
関連項目
Office Add-ins