本ページには広告が含まれています。
UWSC時間からシリアル値を取得します。
- 構文
- Double = getSerialTime( uwscTime )
- 引数
- uwscTime 必須
- GETTIME関数で取得した時間
- 戻り値
- シリアル値
プログラム
//////////////////////////////////////////////////
// 【引数】
// uwscTime : GETTIME関数で取得した時間
// 【戻り値】
// シリアル値
//////////////////////////////////////////////////
FUNCTION getSerialTime(uwscTime)
RESULT = (uwscTime - GETTIME(0, "1899/12/30 00:00:00")) / 86400
FEND
解説
- 2行目
- 「1899/12/30 00:00:00」からuwscTimeまでの日数
RESULT = (uwscTime - GETTIME(0, "1899/12/30 00:00:00")) / 86400
シリアル値
シリアル値とは1900年1月1日を1とし、その日からの通算日数と時刻を表す値のことです。1日毎に1ずつ増え、小数部分が時刻を表します。
日付
- 1900年1月1日1
- 1900年1月2日2
- 1900年1月3日3
- …
- 2000年1月1日36526
- 2020年1月1日43831
時刻
シリアル値で時刻は小数部分で表されます。
1日で1増えるので、1時間は1/24で0.41666666…、1分は1/1440で0.00069444444…、1秒は1/86400で0.0000115740740…増えることになります。
時刻hh:nn:ssのシリアル値は以下の式で求めることができます。
24時間=86400秒。時分秒を秒単位に直して86400で割る。
1時間=3600秒、1分=60秒。
\[ \frac{hh \times 3600 + nn \times 60 + ss}{86400} \]- 0:0:00.0
- 3:0:00.125
- 6:0:00.0.25
- 12:0:00.5
- 21:0:00.875
- 23:59:590.0999988425925926
- 24:0:00.0
1900年うるう年問題
Excelでは1900年のうるう年問題があり、シリアル値60以下の数値にてExcelとUWSCでは結果が異なりますのでご注意ください。
シリアル値 | Excel日付 | UWSC日付 |
---|---|---|
1 | 1900/01/01 | 1899/12/31 |
2 | 1900/01/02 | 1900/01/01 |
3 | 1900/01/03 | 1900/01/02 |
… | … | … |
58 | 1900/02/27 | 1900/02/26 |
59 | 1900/02/28 | 1900/02/27 |
60 | 1900/02/29 | 1900/02/28 |
61 | 1900/03/01 | 1900/03/01 |
62 | 1900/03/02 | 1900/03/02 |
63 | 1900/03/03 | 1900/03/03 |
… | … | … |
関連記事
- uwscToSerial関数 (自作関数)
- UWSC時間をシリアル値に変換します。
- serialToUwsc関数 (自作関数)
- シリアル値をUWSC時間に変換します。シリアル値は、1日(24時間)を1.0とし、1日ごとに1ずつ増えます。整数部分は日付を、小数部分は時刻を表します。Windows版では、1900年日付システムを適用しており、1900年1月1日の午前0時を起点として、シリアル値は1から始まります。
- now関数 (自作関数)
- now関数は、現在の日時を取得する関数です。日付のみ取得したい場合は、today関数を使います。
- getUNIXTime関数 (自作関数)
- 引数に指定した日時のUNIX時間を取得します。
- uwscToUNIX関数 (自作関数)
- UWSC時間をUNIX時間に変換します。
- serialToUNIX関数 (自作関数)
- シリアル値をUNIX時間に変換します。
- UNIXToUwsc関数 (自作関数)
- UNIX時間をUWSC時間に変換します。
- UNIXToSerial関数 (自作関数)
- UNIX時間をシリアル値に変換します。
- Second関数 (自作関数)
- シリアル値 から「秒」を求めます。
- timeValue関数 (自作関数)
- 時刻を表す文字列をシリアル値に変換します。結果は、0以上1未満の値を取ります。引数に日付が含まれる場合日付は無視され、時刻情報のみ変換されます。