データテーブルでは、日付時間値を1つの形式(入力形式)でのみ入力できます。入力した値は、基準日からの秒数として内部に保存され、別の日付時間形式で表示されます。Informat()関数とFormat()関数を使って、これを制御できます。
• Informat()は、文字列の日付時間値と、その文字列に使用されている日付形式を指定すると、ddMonyyyy形式で日付を戻します。
Informat( "19May2011 11:37:52", "ddMonyyyy h:m:s" );
19May2011:11:37:52
• Format()は、基準日からの秒数(または秒数を戻す日付時間関数)を取り、指定の形式で日付を戻します。
Format( 3388649872, "ddMonyyyy h:m:s" );
"19May2011 11:37:52"
Format( Today(), "ddMonyyyy h:m:s" );
"19May2011 11:37:52"
列にd/m/y h:m形式の日付を入力し、日付をm/d/y形式で表示してみましょう。Input Formatは入力形式を定義し、Formatは表示形式を定義します。たとえば、
New Table( "製品の組立",
Add Rows( 1 ),
New Column( "日付",
Numeric,
"Continuous",
Format( "m/d/y" ),
Input Format( "d/m/y h:m" ),
Set Values( [3126917100] )
)
);
FormatとInput formatの値は、データテーブルの列プロパティに表示されます(Figure 6.3)。セルをクリックして編集する際、日付時間値は入力時の形式で表示されます。値を変更したり、新しい値を入力したりすると、その列の[表示形式]で指定されている形式で値が表示されます。
図6.3 日付時間の表示と入力値の例
メモ:
• 列の値を文字から数値に変換するスクリプトでは、Format()とInformat()を指定して欠測値を回避します。文字の日付を数値の日付に変換を参照してください。
• 使用するコンピュータによっては、『スクリプトガイド』の例とは異なり、日付区切り文字がスラッシュ(/)文字ではないことがあります。
• 時間値は、24時間形式、または午前・午後という識別子を付けた形式で入力します。
Table 6.4に、日付時間関数の引数として、またはデータテーブル形式として使用できる形式を示します。これらの形式 は、データ列へのFormatメッセージのformat引数として使うこともできます。形式の設定または取得を参照してください。
特定の日付時間関数については、『スクリプト構文リファレンス』の日付と時間関数を参照してください。
メモ:
• 日付と時間をコロンまたはTで区切る日付時間形式は、常に24時間形式を使用します。その他の形式は、コンピュータの地域の設定に従います。
• 形式が不明な場合は、ログにエラーが出力されます。
種類 | 形式引数 | 例 |
---|---|---|
日付だけ | "m/d/y" | "01/02/1999" |
| "mmddyyyy" | "01021999" |
| "m/y" | "01/1999" |
| "d/m/y" | "02/01/1999" |
| "ddmmyyyy" | "02011999" |
| "ddMonyyyy" | "02Jan1999" |
| "Monddyyyy" | "Jan021999" |
| "y/m/d" | "1999/01/02" |
| "yyyymmdd" | "19990102" |
| "yyyy-mm-dd" | "1999-01-02" |
| "yyyyQq" | 1999Q1 |
日付と時間 | "m/d/y h:m" | "01/02/1999 13:01" "01/02/1999 午後 1:01" |
| "m/d/y h:m:s" | "01/02/1999 13:01:55" "01/02/1999 午後 1:01:55" |
| "d/m/y h:m" | "02/01/1999 13:01" "02/01/1999 午後 1:01" |
| "d/m/y h:m:s" | "02/01/1999 13:01:55" "02/01/1999 午後 1:01:55" |
| "y/m/d h:m" | "1999/01/02 13:01" "1999/01/02 午後 1:01" |
| "y/m/d h:m:s" | "1999/01/02 13:01:02" "1999/01/02 午後 1:01:02" |
| "ddMonyyyy h:m" | "02Jan1999 13:01" "02Jan1999 午後 1:01" |
| "ddMonyyyy h:m:s" | "02Jan1999 13:01:02" "02Jan1999 午後 1:01:02" |
| "ddMonyyyy:h:m" | "02Jan1999 13:01" "02Jan1999 午後 1:01" |
| "ddMonyyyy:h:m:s" | "02Jan1999 13:01:02" "02Jan1999 午後 1:01:02" |
| "Monddyyyy h:m" | "Jan021999 13:01" "Jan021999 午後 1:01" |
| "Monddyyyy h:m:s" | "Jan021999 13:01:02" "Jan021999 午後 1:01:02" |
経過日数と時間 | ":day:hr:m" | "34700:13:01" ":33:001:01 PM" |
| ":day:hr:m:s" | "34700:13:01:02" ":33:001:01:02 PM" |
| "h:m:s" | "13:01:02" "午後 01:01:02" |
| "h:m" | "13:01" "午後 01:02" |
| "yyyy-mm-ddThh:mm" | 1999-01-02T13:01 |
| "yyyy-mm-ddThh:mm:ss" | 1999-01-02T13:01:02 |
時間の長さ | ":day:hr:m" | "52:03:01" (52日3時間1分) |
| ":day:hr:m:s" | "52:03:01:30" (52日3時間1分30秒) |
| "hr:m" | "17:37" (17時間37分) |
| "hr:m:s" | "17:37:04" (17時間37分4秒) |
| "min:s" | "37:04" (37分4秒) |
メモ: 以下の形式は、日付時間をコンピュータの地域設定に従って表示します。これらの形式は、表示にのみ適用され、データテーブルへの日付の入力には使用できません。例は、米国のロケールを使用した場合です。 | ||
短い日付 | "Date Abbrev" | (表示のみ)"01/02/1999" |
長い日付 | "Date Long" | (表示のみ)"Saturday, January 02, 1999" |
ロケールの日付 | "Locale Date" | (表示のみ)"01/02/1999" |
ロケールの日時 | "Locale Date Time h:m" | (表示のみ)"01/02/1999 13:01"または"01/02/1999 01:01 PM" |
"Locale Date Time h:m:s" | (表示のみ)"01/02/1999 13:01:02"または"01/02/1999 01:01:02 PM" |