日付と数値の形式

日時形式と数値形式を使用すると、スプレッドシートでのデータの表示方法を制御できます。 Google スプレッドシートには一般的な形式がいくつか用意されていますが、 独自のフォーマットを定義できます。

Google スプレッドシートの UI では、 形式 >[番号] メニュー。Sheets API では、これらの書式を spreadsheets.batchUpdate メソッド呼び出しを使用して UpdateCellsRequest または RepeatCellRequest

このページでは、新しい日付と数値の形式のパターンを定義する方法について説明します。このパターンは、 API リクエストに含めることができます。サンプル 範囲にカスタムの日時または小数点形式を設定する に、API を使用して形式パターンを設定する方法を示します。実際のレンダリング処理では、 形式は、スプレッドシートの locale によって異なります。このガイドでは、 localeen_US です。スプレッドシートの locale は、 SpreadsheetProperties spreadsheets.get リクエストできます。

日付と時刻の値

他のほとんどのスプレッドシート アプリケーションと同様に、スプレッドシートでは日付と時刻の値を 使用できます。数式でそれらのデータに対して算術演算を実行できるため、 日または週を増分する、2 つの日付と時刻を加算または減算する、その他の 同様の操作を行えます

スプレッドシートでは エポック日付 スプレッドシートでよく使われる関数です。値の整数部分 (小数点の左側)は、1899 年 12 月 30 日からの日数をカウントします。分数の 部分(小数点の右側)は、時刻を 1 日の小数点としてカウントします。対象 たとえば、1900 年 1 月 1 日正午は 2.52 です。これは 2 日後なので、 1899 年 12 月 30 日、0.5 です。正午が半日であるためです。1900 年 2 月 1 日午後 3 時 33.625 です。

Google スプレッドシートでは、1900 年がうるう年ではなく通常の年として正しく扱われます。

日付と時刻形式のパターン

日時形式パターンは、解析時に次のトークン部分文字列からなる文字列です。 対応する日付 / 時間要素(月、月、日など)に できます。

日付と時刻形式トークン

次の表は、日時関数で使用できるトークンの部分文字列を定義しています。 使用できます。+ 文字は、前の文字が表示されることを示します。 同じパターンに一致する場合があります。この表に記載されていない文字は、 次の表はリテラルとして扱われ、変更なしで出力されます。

トークン 説明
h 時間帯です。時間に応じて 12 時間形式と 24 時間形式が切り替わります 文字列に AM または PM のインジケーターが存在するかどうか。
hh+ 前と同じですが、1 ~ 9 の前に 0 が付きます。
m 前の非リテラル トークンが時間の場合、または後続のトークンが 秒: 時刻の分数を表します(先頭に 0 は付けません)。それ以外の場合は 月を数値(先頭に 0 を付けない)で表します。
M 月(先頭に 0 を付けない)。このトークンを使用して、パターンで 1 分ではなく 1 か月を明示的に記述します。
mm m と同じですが、どちらの場合も先頭に 0 が付きます。
MM 先頭に 0 が付いた月。このトークンを使用して、パターンで 1 分ではなく 1 か月を明示的に記述します。
mmm 月の 3 文字の略語(例: 「2 月」)。
mmmm 月の正式名。mmmmmm+ もこれに一致します。
mmmmm 月の最初の文字(例: 6 月は「J」)。
s 先頭に 0 を付けない秒。
ss 分単位の秒。先頭に 0 を付けます。
[h+] 期間の経過時間。文字数 最小桁数を示します(先頭の 0 を追加します)。
[m+] 期間の経過分数。文字数 最小桁数を示します(先頭の 0 を追加します)。
[s+] 経過時間の秒数。文字数 最小桁数を示します(先頭の 0 を追加します)。
d 日。10 未満の数字の場合は先頭に 0 を付けません。
dd 日。10 未満の数字の前に 0 を付けます。
ddd 曜日。3 文字の省略形(「Mon」など)。
dddd+ 曜日(フルネーム)。
y 2 桁の年。
yy
yyy 4 桁の年。
yyyy+
a/p 「a」と表示する「p」は設定されます。営業時間も変更されます: 12 時間形式。トークン文字が大文字の場合、出力は次のようになります。 できます。
am/pm 上記と同じ。ただし「AM」と表示される「PM」常に すべて大文字にします。
0 10 分の 1 秒。精度は、次を使用して 2 桁に増やすことができます。 00、または 000 と一緒に 3 桁(ミリ秒)。
\ 次の文字を特殊文字ではなくリテラル値として扱います 意味します。
"text" 引用符で囲まれたテキストをリテラルとして表示します。

日付と時刻表示形式の例

日時が Tuesday, April 5, 2016, 4:08:53.528 PM であるとすると、 次の表に、パターンの例とそれに対応する日時を示します。 説明します。表の 2 番目のセクションは、経過時間の例を示しています。 経過時間が 3 hours, 13 minutes, 41.255 seconds の場合の形式:

日時パターン Tuesday, April 5, 2016, 4:08:53.528 PM
h:mm:ss.00 a/p 午後 4:08:53.53
hh:mm A/P".M." 午後 4 時 8 分
yyyy-mm-dd 2016-04-05
mmmm d \[dddd\] 4 月 5 日 [火曜日]
h PM, ddd mmm dd 4 月 5 日(火)午後 4 時
dddd, m/d/yy at h:mm 2016 年 4 月 5 日(火)16:08
経過時間のパターン 3 hours, 13 minutes, 41.255 seconds
[hh]:[mm]:[ss].000 03:13:41.255
[mmmm]:[ss].000 0193:41.255

数値形式のパターン

数値形式のパターンは、トークンの部分文字列からなる文字列で、解析時に 対応する数値表現に置き換えます。数値形式パターン 最大 4 つのセクションで構成され、各セクションをセミコロンで区切って、 正の数、負の数、ゼロ、テキスト( できます)。

[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT];[TEXT FORMAT]

1 つのフォーマットに 4 つのセクションをすべて含める必要はありません。1 つだけ その形式がすべての値で使用されます。2 つのセクションを使用すると、最初の 2 つ目の書式を 0 と正の数に適用し、2 つ目の書式を 負の数を表します。セクションを 3 つ使用すると、ポジティブ、ネガティブ、 ゼロ、負の数。例:

[NUMBER FORMAT]
[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT]
[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT]

ただし、2 つ以上のセクションがあり、最後のセクションがテキストの場合、 そのセクションはテキスト形式として扱われ、他のセクションはテキスト形式として セクションが 1 つ減ります。したがって、最終的なテキスト形式を含めることで、 次のような形式を定義します。

[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT];[TEXT FORMAT]
[NUMBER FORMAT];[TEXT FORMAT]

形式のセクションへの解析は他の解析の前に行われるので、 日付または時刻の形式をセクションの 1 つとして含めることができます(ただし、 有用性が限定的)。

数値形式トークン

次の表に、形式セクションで使用できるトークンの部分文字列を示します。 そのセクションの値を表現する方法を定義します。

トークン 説明
0 数値の数字を表します。桁が意味のない 0 の場合 0 としてレンダリングされますたとえば、数値形式は 00.0 は数字 3 を「03.0」としてレンダリングします。
# 数値の数字を表します。桁が意味のない 0 の場合 レンダリングされません。たとえば、数値形式は ##0 です。 数字 12 は「12」とレンダリングされます。
? 数値の数字を表します。桁が意味のない 0 の場合 スペースとしてレンダリングされます。これは通常、小数点以下を揃えるために使用されます。 固定幅フォント使用時に列を追加できませんたとえば、数値形式は ???.??? は数値 12.4 をレンダリングします。 」12.4 インチ。
. 最初のピリオドは、数値の小数点を表します。それ以降 ピリオドはリテラルとしてレンダリングされます。数値に小数点が含まれる場合、 整数であっても常にレンダリングされます。たとえば #0.# は数字 3 を「3.」としてレンダリングします。
% リテラルとして指定されるが、既存の数値も乗算される レンダリングの前に 100 ずつ減らして、パーセンテージを 読み取りますたとえば、数値形式は #% です。 数値 0.25 は「25%」としてレンダリングされます。
, 2 桁の数字(0#? など)は、数値全体がレンダリングされます。 グループ化の区切り記号(3 桁ごとのグループ化)を使用します。次の場合 桁数に応じて桁数を 1, 000 ずつ調整し、 カンマ(たとえば、#0.0,, という形式では、 12,200,000(12.2))。
E- 数値を指数形式でレンダリングし、 非指数に使用する E の左に書式を設定します 指数に使用する E の右側の書式は なります。E+ は、肯定的であることを示す + 記号を表示します 累乗されますE- は負の指数の符号のみを表示します。条件 小文字が使用されると、出力 e も小文字になります。 たとえば、数値形式は ##0.00#E+## です。 数値 0.0000001 は「100.00E-9」としてレンダリングされます。
E+
e-
e+
/ 2 桁の数字(0#? など)では、これらの数字グループは 使用できます。たとえば、数値形式は 0 #/# でレンダリングされます。 数値 23.25 を 23 1/4 と指定します。分母 リテラル整数にすることもできます。その場合、その整数が次のように強制されます。 分母を乗算します数値形式 0 #/8 数字 23.25 は 23 2/8 と表示されます。小数部は レンダリングされます。数値 数値形式 0 #/3 の 23.1 は、次のようにレンダリングされます。 23(0.1 は 0/3 に丸められるため)。/ は 指数形式または小数点を含む形式には対応していません 含まれています。
* これは、Microsoft Excel の数値形式との互換性を確保するために含まれています。現在は無視されます。
_ アンダースコア トークンは次の文字をスキップしてスペースを表示します。これは、トレーニング データに基づく 負の値はかっこで囲まれた数値形式です。
\ 次の文字を特殊文字ではなくリテラル値として扱います 意味します。たとえば、数値形式は \#0 です。 数字 10 は「#10」とレンダリングされます。
"text" 引用符で囲まれたテキストをリテラルとして表示します。
@ セルにテキスト入力がある場合は、セルに未加工のテキストを挿入します。× 他の特殊文字と互換性があり、 数値(一般的な形式で表示)
$ - + ( ) : space スプレッドシートではこれらの文字がリテラルとして扱われ、表示されます 変更はありません。

Meta の手順

さらに、各形式のセクションにオプションのメタ指示を含めることができます。 [] 文字で囲まれ、書式の前に付けられ、 追加の説明があります2 つのメタ指示タイプと特定の セクションでは次の両方を使用できます。

手順 説明
[condition] デフォルトの正、負、またはゼロの比較を置き換えます セクションを別の条件式で囲みます。たとえば [<100]”Low”;[>1000]”High”;000 は単語をレンダリングします。 100 未満の値は「Low」、1000 を超える値は「High」、3 桁の数字 その中間のすべての文字に数字(先頭に 0 あり)を付けます。条件に指定できるのは 最初の 2 つのサブフォーマットに適用されます。また、数値が 1 つ以上の値と一致する場合は、 最初に一致したものを使用します。3 つ目の形式があれば 「その他」すべてに対して使用。それ以外の場合は数字が一致しない場合に使用する すべて「#」で表示されたセルがセル幅に表示されます。存在する場合、 4 つ目の形式は常にテキストに使用されます。
[Color] or [Color#] このサブフォーマットでレンダリングされるすべての値が、 指定します。Color の有効な値は黒、 青、シアン、緑、マゼンタ、赤、白、黄色。 「#」の有効な値Color# では 0 ~ 56(これは カラーパレット 各数字に対応する色のリストを表示します)。数値形式 ユーザーがセルに入力した色は色によってオーバーライドされますが、 条件付き書式で設定された色をオーバーライドします。

数値形式の例

次の表に、パターンの例とそれに対応する 書式設定された数値のレンダリング:

数値 パターン フォーマットされた値
12345.125 ####.# 12345.1
12.34 000.0000 012.3400
12 #.0# 12.0
5,125 # ???/??? 5 1/8
12000 #,### 12,000
1230000 0.0,,"M" 120 万
1234500000 0.00e+00 1.23e+09
123114.15115
MyText
###0.000;"TEXT: "_(@_) 123114.151
テキスト: MyText
1234
-1234
0
MyText
[Blue]#,##0;[Red]#,##0;[Green]0.0;[Magenta]_(@_) 1,234
1,234
0.0
MyText
1,005
32
527
[>1000]"HIGH";[Color43][<=200]"LOW";0000

0527