標準の数値、日時、カスタム形式、およびその他のさまざまな形式オプションを使用して、セルの値をフォーマットすることができます。
セルにフォーマット文字列を設定するにはsetFormatterメソッドを使用し、セルのフォーマット文字列を取得するにはgetFormatter メソッドを使用します。
また FormatterBase クラスを使用してカスタムフォーマッタを作成することもできます。このクラスはこのクラスは、コンボフォーマッタ、条件付きフォーマッタ、前景色フォーマッタをサポートしています。"(", ")",および "*" 式はサポートしていません。
セル、列、または行を取得するには、formatterメソッドを使用してセルのフォーマッターを取得および設定します。
次のコード例は、さまざまなフォーマットスタイルでセル値をフォーマットする方法を示しています。
JavaScript |
コードのコピー
|
---|---|
var dvalue= 12345.6789; activeSheet.setValue(0,0,dvalue); activeSheet.getCell(0, 1).formatter("M"); activeSheet.setValue(0, 1, new Date(2011, 2, 9)); activeSheet.getCell(0, 2).formatter("m"); activeSheet.setValue(0, 2, new Date(2012, 10, 15)); activeSheet.getCell(0, 3).formatter("General"); activeSheet.setValue(0, 3, new Date(2012, 10, 15)); activeSheet.getCell(0, 4).formatter("#.#%"); activeSheet.setValue(0, 4, 1); activeSheet.getCell(1, 0).formatter('[<0](0.0);[>0]0.0;"zero";@'); activeSheet.setValue(1, 0, 3); |
SpreadJSは、"# ?/?"、"# ?/?"、"# ?/4"、"#,# ?/? "などの一般的な分数形式をサポートしています。負の値を分数に変換することができます。
次のコード例では、セルの値を分数としてフォーマットしています。
JavaScript |
コードのコピー
|
---|---|
var dvalue= 123.89; activeSheet.setValue(0,0,dvalue); activeSheet.getCell(0, 0).formatter("# ??/??"); |
SpreadJSは、ロケールID"$-411"とDBNumberもサポートしています。
次のコード例では、ロケールID"$-411"を使用してセルの値をフォーマットしています。
JavaScript |
コードのコピー
|
---|---|
var dvalue= 123.89; activeSheet.setValue(0,0,dvalue); activeSheet.getCell(0,0).formatter("[$-411]dddd"); |
次のコード例は、DBNumber を使ってセル値をフォーマットするものです。
JavaScript |
コードのコピー
|
---|---|
var dvalue= 123.89; activeSheet.setValue(0,0,dvalue); activeSheet.getCell(0,0).formatter("[DBNum2][$-411]General"); |
カルチャを「ja-jp」または「en-us」に設定することもできます。ウィジェットまたは個々のセルのカルチャを指定します。
次のコード例は、ウィジェットのカルチャを設定します。
JavaScript |
コードのコピー
|
---|---|
// ウィジェットの設定。 GC.Spread.Common.CultureManager.culture("ja-jp"); |
数値は、現在のカルチャに基づいてフォーマットされます。デフォルトのカルチャは英語です。セルのカルチャはウィジェットのカルチャを変更しません。
次のコード例では、セルにカルチャを設定します。
JavaScript |
コードのコピー
|
---|---|
// セルの設定。 //Input date string "2014/01/07" in cell[0,0] and cell[0,1] activeSheet.getCell(0,0).formatter(new GC.Spread.Formatter.GeneralFormatter("yyyy/MM/dd dddd", "ja-jp")); activeSheet.getCell(0,1).formatter(new GC.Spread.Formatter.GeneralFormatter("yyyy/MM/dd dddd", "en-us")); |
カラーフォーマットはforeColorに影響し、[red] や [blue] などの色名とカラーインデックス(color1~color56)をサポートしています。
次のコード例は、インデックスによるカラーフォーマットを設定し、値域に応じてセルの色を変更する方法です。
JavaScript |
コードのコピー
|
---|---|
activeSheet.getRange(2,2,1,6).formatter("[color44][<300]0.0;[color3][>400]0.0;[color45]0.0")
activeSheet.getCell(2,2).value(100);
activeSheet.getCell(2,3).value(200);
activeSheet.getCell(2,4).value(300);
activeSheet.getCell(2,5).value(400);
activeSheet.getCell(2,6).value(500);
activeSheet.getCell(2,7).value(600);
|