MESCIUS SPREAD for Windows Forms 17.0J > 開発者ガイド > セル > セルの書式設定文字列の操作 |
SPREAD for Windows Formsを使用すると、セルに表示するデータを書式設定できます。このダイアログの6つのタブでは、表示形式、配置、フォント、罫線、塗りつぶし、保護を設定できます。
SPREAD for Windows Formsでは、以下の書式がサポートされます。
この書式には特定の数値形式がありません。 一般の書式で書式設定された数値は、入力したとおりに表示されます。
ただし、この書式を使用すると、セル内の特定の文字制限を超えた場合、またはセルの幅が十分でないために数値全体を表示できない場合、数値が自動的に丸められます。
[標準] 表示形式では、大きな数値を入力すると、次のいずれかのシナリオが発生する可能性があります。
たとえば、「123456.7891234」 は 「123456.7891」 に丸められます。
たとえば、「123451234512」 は 「1.23451E+11」 に丸められます。
また、表示形式が [標準] に設定されたセルの列幅を縮小すると、次のような動作になります。
メモ: 本動作を無効にするには、数値や会計などの[標準]以外の書式を使用します。 |
この書式を使用すると、帯分数など、数値を2つの形式「# ?/?」、「# ??/??」の分数として表示できます。SPREAD for Windows Formsでは、この書式を使用すると、小数点以下何桁まで分数として表示するのか、または近似値として丸めて表示するのかを選択できます。仮分数となる数値を入力した場合は、自動的に帯分数として整数と真分数で表示されます。負の分数値を入力するには、帯分数の前にマイナス(-)記号を入力するか、または帯分数を括弧 "( )" で囲んで入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
# ?/? | 8.333 | 8 1/3 |
# ??/?? | 0.846 | 11/13 |
次のサンプルコードは、値を含むセルに分数書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, 8.333); worksheet.Cells["A1"].NumberFormat = "# ?/?"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, 8.333) worksheet.Cells("A1").NumberFormat = "# ?/?" |
数値書式を使用すると、数値を2つの形式「#,##0」、「#,##0.00」で表示できます。3桁区切り記号と小数点以下の桁数を指定してデータを表示するには、[桁区切り(,)を使用する]オプションをオンにして、小数点以下の桁数を指定します。負の数値を入力するには、数値の前にマイナス(-)記号を入力するか、または数値を括弧 "( )" で囲んで入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
#,##0 | 1231 | 1,231 |
#,##0.00 | 4561 | 4,561.00 |
次のサンプルコードは、値を含むセルに数値書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, 1234); worksheet.Cells["A1"].NumberFormat = "#,##0"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, 1234) worksheet.Cells("A1").NumberFormat = "#,##0" |
パーセンテージ書式を使用すると、数値を2つの形式「0」、「0.00」で表示できます。この書式を適用されたセル値は100倍され、パーセント(%)記号を付けて表示されます。また、表示する小数点以下の桁数を指定できます。負の数値を入力するには、数値の前にマイナス(-)記号を入力するか、または数値を括弧 "( )" で囲んで入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
0% | 0.05 | 5% |
0.00% | 0.8 | 80.00% |
次のサンプルコードは、値を含むセルにパーセント書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, 0.05); worksheet.Cells["A1"].NumberFormat = "0%"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, 0.05) worksheet.Cells("A1").NumberFormat = "0%" |
指数書式を使用すると、数値は「0.00E+00」形式のみで表示されます。指数書式を適用した数値は、「E+n」形式に置き換えられた指数表記で表示されます。「E」は指数を表し、Eの前の数値を10のn乗した値になることを意味します。数値を指数(科学的)書式で表示するには、「mEn」形式で数値を入力します。係数「m」は任意の実数を表し、指数「n」は、小数点を移動した場合の桁数を表す整数です。「E」と「E+」は置換でき、「e」と「e+」、「E-」と「e-」もそれぞれ置換できます。負の数値を入力するには、数値の前にマイナス(-)記号を入力するか、または数値を括弧 "( )" で囲んで入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
0.00E+00 | 12345678901 | 1.23E+10 |
次のサンプルコードは、値を含むセルに指数書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, 12345678901); worksheet.Cells["A1"].NumberFormat = "0.00E+00"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, 12345678901) worksheet.Cells("A1").NumberFormat = "0.00E+00" |
通貨書式を使用すると、データを2つの形式「$#,##0_);[Red]($#,##0)」、「$#,##0.00_);[Red]($#,##0.00)」で表示できます。通貨記号の位置は、MS Officeプログラムのデフォルト言語に基づきます。セル値に通貨書式を適用するには、通貨記号を正しい位置で入力する必要があります。負の通貨値を入力するには、通貨値の前にマイナス(-)記号を入力するか、または通貨値を括弧 "( )" で囲んで入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
$#,##0_);[Red]($#,##0) | -1235 | ($1,235) |
$#,##0.00_);[Red]($#,##0.00) | 4597 | $4,597.00 |
次のサンプルコードは、値を含むセルに通貨書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, -1235); worksheet.Cells["A1"].NumberFormat = "$#,##0_);[Red]($#,##0)"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, -1235) worksheet.Cells("A1").NumberFormat = "$#,##0_);[Red]($#,##0)" |
時刻書式を使用すると、データを6つの形式「h:mm tt」、「h:mm:ss tt」、「H:mm」、「H:mm:ss」、「[h]:mm:ss」、「mm:ss.0」で表示できます。時、分、秒には、整数値しか指定できません。日本語、中国語、または韓国語で時刻を入力するには、「時」、「分」などの文字と数値を組み合わせて入力します。
コード書式 | 入力値 | 表示される値 |
---|---|---|
h:mm tt | 21:05 | 9:05 tt |
h:mm:ss tt | 7:49:15 | 7:49:15 tt |
h:mm | 17:25 | 17:25 |
h:mm:ss | 3:19 | 3:19:00 |
[h]:mm:ss | 236:34 | 20:34:00 |
mm:ss.0 | 5:05 | 05:00.0 |
次のサンプルコードは、値を含むセルに時刻書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1.ActiveSheet.AsWorksheet(); worksheet.SetValue(0, 0, DateTime.Now); worksheet.Cells["A1"].NumberFormat = "h:mm:ss"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, DateTime.Now) worksheet.Cells("A1").NumberFormat = "h:mm:ss" |
日付書式を使用すると、データを「yyyy/m/d」、「yyyy"年"m"月"」、「m"月"d"日"」のような形式で表示できます。この書式を使用するには、「日と月」や「日と年」など、1つ以上の組み合わせで値を入力するか、または「日、月、年」すべてを組み合わせた値として入力する必要があります。「日と月」だけの値を入力すると、「年」は自動的に現在の年として設定されます。SPREAD for Windows Formsでは、区切り記号として「-」記号と「/」記号の両方がサポートされます。これらの区切り記号は、どのように組み合わせて使用することもできます。
日、月、年のそれぞれの値は、次の表のように入力できます。
月 | m | 1 〜 12 |
月 | mm | 01 〜 12 |
月 | mmm | Jan-Dec |
月 | mmmm | 1月 〜 12月 |
日 | d | 1 〜 31 |
日 | dd | 01 〜 31 |
年 | yy | 00 〜 99 |
年 | yyyy | 1900 〜 9999 |
「年」として「0〜29」のいずれかの値を入力すると、この値は自動的に「2000〜2029」と書式設定されます。同様に、「年」として「30〜99」のいずれかの値を入力すると、この値は自動的に「1930〜1999」と書式設定されます。「月」を表すテキスト値には、大文字と小文字のどちらも使用できます。日本語、中国語、または韓国語で日付を入力するには、「月」、「日」などの文字と数値を組み合わせて入力します。
また、SPREAD for Windows Formsでは東南アジア地域の数値書式でデータを表示できるように、[DBNumX] 修飾子の使用がサポートされます。たとえば、日本語ロケールにおいて、数値「43516」に対して "[DBNum1][$-411]yyyy/m/d"という書式を適用すると、表示されるテキストは「二〇一九/二/二十」となります。
コード書式 | 入力値 | 表示される値 |
---|---|---|
yyyy/m/d | 2019/02/20 | 2019/2/20 |
yyyy"年"m"月" | 2019/02/20 | 2019年2月 |
m"月"d"日" | 2019/02/20 | 2月20日 |
次のサンプルコードは、値を含むセルに日付書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.Cells["A1"].Text = "1/1/2021"; worksheet.Cells["A1"].NumberFormat = "dd-mm-yyyy"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.Cells("A1").Text = "1/1/2021" worksheet.Cells("A1").NumberFormat = "dd-mm-yyyy" |
日時書式を使用すると、数値は「yyyy/m/d h:mm」形式のみで表示されます。日付値と時刻値を組み合わせて入力すると、このデータには自動的に日時書式(yyyy/m/d h:mm)が適用されます。日付値は、時刻値の前にも後にも配置できます。「hour:」または「hour:minute」書式で時刻値を入力するには、日、月、年の値と組み合わせる必要があります。日付値だけを入力すると、この値には日付書式が適用されます。
コード書式 | 入力値 | 表示される値 |
---|---|---|
yyyy/m/d h:mm | 2019/02/20 12:30:00 | 2019/2/20 12:30 |
次のサンプルコードは、値を含むセルに日時書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.Cells["A1"].Text = "2019/02/20 12:30:00"; worksheet.Cells["A1"].NumberFormat = "yyyy/m/d h:mm"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.Cells("A1").Text = "2019/02/20 12:30:00" worksheet.Cells("A1").NumberFormat = "yyyy/m/d h:mm" |
会計書式を使用すると、数値を2つの形式「$* #,##0」、「$* #,##0.00」で表示できます。この書式では、通貨記号と小数点が列内で揃えて表示されます。これには、繰り返し文字としてアスタリスク(*)記号を使用します。デフォルトでは、コード書式は「* 」(アスタリスクと半角スペース)を使用して、通貨記号と値の間にスペースを入力しますが、スペースを他の任意の文字に置き換えることもできます。
コード書式 | 入力値 | 表示される値 |
---|---|---|
$* #,##0 | -1513 | -$ 1,513 |
$* #,##0.00 | 2583 | $ 2,583.00 |
次のサンプルコードは、値を含むセルに会計書式を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, -1513); worksheet.Cells["A1"].NumberFormat = "$* #,##0"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, -1513) worksheet.Cells("A1").NumberFormat = "$* #,##0" |
この書式を使用すると、foreColor に影響する色の基準に基づいてデータが表示されます。 色文字列名も色インデックス(色 1 〜56 )もサポートしています。
次のサンプルコードは、値の範囲に応じてセルの色を変更する場合、インデックスによって色の書式設定を設定する方法を示しています。
C# |
コードのコピー
|
---|---|
var worksheet = fpSpread1_Sheet1.AsWorksheet(); worksheet.SetValue(0, 0, 100); worksheet.SetValue(0, 1, 200); worksheet.SetValue(0, 2, 300); worksheet.SetValue(0, 3, 400); worksheet.SetValue(0, 4, 500); worksheet.SetValue(0, 5, 600); worksheet.Range("A1:F1").NumberFormat = "[color44][<300]0.0;[color3][>400]0.0;[color45]0.0"; |
Visual Basic |
コードのコピー
|
---|---|
Dim worksheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1_Sheet1.AsWorksheet() worksheet.SetValue(0, 0, 100) worksheet.SetValue(0, 1, 200) worksheet.SetValue(0, 2, 300) worksheet.SetValue(0, 3, 400) worksheet.SetValue(0, 4, 500) worksheet.SetValue(0, 5, 600) worksheet.Range("A1:F1").NumberFormat = "[color44][<300]0.0;[color3][>400]0.0;[color45]0.0" |
テキスト書式を使用すると、データがテキストとして表示されます。この書式を適用すると、数値を入力した場合でも、セルへの入力値がテキストとして扱われます。セルには、入力したとおりのデータが表示されます。
この書式では、データを「郵便番号」、「郵便番号+4」、「電話番号」、「社会保障番号」の4つの形式で表示できます。