指定された間隔の単位で、2つの日付の違いを取得します。
構文:
用法:
#include "vbcompat.bi"
result = DateDiff
( interval, date_serial1, date_serial2 [, firstdayofWeek [, firstweekofyear ] ] )
パラメタ:
interval
差異を測定する、時間(間隔)の単位
date_serial1
始めの日付の連続値
date_serial2
終わりの日付の連続値
firstdayofweek
週の最初の日
firstdayofyear
年の初日
戻り値:
date_serial1 > date_serial2 であれば、結果は負数です。
記述:
間隔(interval)は、下のように指定します:
値 | 間隔(interval) |
yyyy | 年 |
q | 4分の1年(3カ月) |
m | 月 |
w | 7日間の期間 |
ww | 暦週 |
d,y | 日 |
h | 時間 |
n | 分 |
s | 秒 |
first_dayofweek は、間隔に 'ww' を使うときに影響します。
値 | 週の初日(first day of week) | 定数 |
省略 | sunday |
|
0 | ローカル設定 | fbUseSystem |
1 | sunday | fbSunday |
2 | monday | fbMonday |
3 | tuesday | fbTuesday |
4 | wednesday | fbWednesday |
5 | thursday | fbThursday |
6 | friday | fbFriday |
7 | saturday | fbSaturday |
first_weekofyear は、年末年初の週を、どちらの年(前の年か次の年)に含めるかを指定します。1年の終わりに含める週と、次の年の始まりに含める週を指定します。
値 | 年の1週間目(first week of year) | 定数 |
0 | ローカル設定 | fbUseSystem |
1 | 1月の第一週 | fbFirstJan1 |
2 | 年の最初で、週に4日間以上ある週 | fbFirstFourDays |
3 | 年の最初の完全な週 | fbFirstFullWeek |
2つの日付の連続値の引き算をすることは、日数の差異を得ることになります。
vbcompat.bi か datetime.bi が含まれていないと、コンパイラは、この関数を認識しません。
例:
#include "vbcompat.bi"
Dim s As String, d1 As Double, d2 As Double
Line Input "誕生日を入力してください:
", s
If IsDate( s ) Then
d1 = DateValue
( s )
d2 = Now
()
Print "あなたは " & DateDiff( "yyyy", d1, d2 ) & " 才です。"
Print "あなたは、生後 " & DateDiff( "d", d1, d2 ) & " 日です。"
Print "あなたは、生後 " & DateDiff( "s", d1, d2 ) & " 秒です。"
Else
Print "無効の日"
End If
Sleep
QBからの違い:
- QB では、存在しませんでした。
この関数は、Visual Basic で現れました。
参照: