指定された間隔の単位で、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 で現れました。
参照: