本ページには広告が含まれています。
シリアル値をUWSC時間に変換します。
- 構文
- Double = serialToUwsc( serialDate )
- 引数
- serialTime 必須
- シリアル値
- 戻り値
- UWSC時間
プログラム
//////////////////////////////////////////////////
// 【引数】
// serialTime : シリアル値
// 【戻り値】
// UWSC時間
//////////////////////////////////////////////////
FUNCTION serialToUwsc(serialDate)
RESULT = GETTIME(serialDate, "18991230000000")
FEND
解説
- 2行目
RESULT = GETTIME(serialDate, "18991230000000")
シリアル値
シリアル値とは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
使い方
シリアル値をUWSC時間に変換し日時を出力
serialToUwscの戻り値は秒単位に対し、GETTIMEの第一引数は日単位なのでuwscTimeを86400で割ることで秒単位から日単位に変換。
DIM serial = 44531.62568
DIM uwscTime = serialToUwsc(serial)
GETTIME(uwscTime / 86400, "20000101000000")
PRINT G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2 + " " + G_TIME_HH2 + ":" + G_TIME_NN2 + ":" + G_TIME_SS2
- 結果
2021/12/01 15:00:58
関連記事
- getSerialTime関数 (自作関数)
- UWSC時間からシリアル値を取得します。
- uwscToSerial関数 (自作関数)
- UWSC時間をシリアル値に変換します。
- now関数 (自作関数)
- now関数は、現在の日時を取得する関数です。日付のみ取得したい場合は、today関数を使います。
- getUNIXTime関数 (自作関数)
- 引数に指定した日時のUNIX時間を取得します。
- uwscToUNIX関数 (自作関数)
- UWSC時間をUNIX時間に変換します。
- serialToUNIX関数 (自作関数)
- シリアル値をUNIX時間に変換します。
- UNIXToUwsc関数 (自作関数)
- UNIX時間をUWSC時間に変換します。
- UNIXToSerial関数 (自作関数)
- UNIX時間をシリアル値に変換します。
- Second関数 (自作関数)
- シリアル値 から「秒」を求めます。
- timeValue関数 (自作関数)
- 時刻を表す文字列をシリアル値に変換します。結果は、0以上1未満の値を取ります。引数に日付が含まれる場合日付は無視され、時刻情報のみ変換されます。