日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
2015/08/26
DateDiff 関数の使い方
result = DateDiff ( interval, date1, date2, [ firstdayofweek, firstweekofyear ] )
引数・戻り値
- interval ・・・ 取得する日付間の間隔の「時刻・時間の単位」を表す文字列式を指定します(「時刻・時間単位の設定値表」を参照 )。
- date1,date2 ・・・ 比較する日付・時刻を指定します(内部処理形式 Date のバリアント型の値、もしくはリテラル文字列)。
- firstdayofweek ・・・ 週の始まりの曜日を表す定数を指定します。省略すると日曜日を指定したものとみなされます(「週の始まりの曜日を示す定数」を参照 )。
- firstweekofyear ・・・ 年度の第 1 週を表す定数を指定します。省略すると、1 月 1 日を含む週が第 1 週とみなされます(「年度の始まりを示す定数」を参照 )。
- result ・・・ 2つの日付・時間( date1 と date2 )の間隔を表す数値(Long 型)。
時刻・時間単位の設定値表(interval に指定する値)
| 値 | 内容 | 備考 |
| yyyy | 年 | |
| q | 四半期 | |
| m | 月 | |
| y | 年間通算日 | d を指定した場合と同じ |
| d | 日 | |
| w | 週日 | 週間数( date1 の曜日から date2 までのその曜日の数。ただし date1 自体は数に含めない)。 |
| ww | 週 | 週間数( date1 から date2 までの日曜日の数。ただし date1 が日曜日の場合、date1 は数に含めない)。 |
| h | 時 | |
| n | 分 | |
| s | 秒 |
週の始まりの曜日を示す定数(firstdayofweek に指定する値)
| 値 | 定数 | 内容 |
| 0 | vbUseSystem | NLS(システムの各国対応)APIの設定値を使用 |
| 1 | vbSunday | 日曜日(規定値) |
| 2 | vbMonday | 月曜日 |
| 3 | vbTuesday | 火曜日 |
| 4 | vbWednesday | 水曜日 |
| 5 | vbThursday | 木曜日 |
| 6 | vbFriday | 金曜日 |
| 7 | vbSaturday | 土曜日 |
年度の始まりを示す定数(firstweekofyear に指定する値)
| 値 | 定数 | 内容 |
| 0 | vbUseSystem | NLS(システムの各国対応)APIの設定値を使用 |
| 1 | vbFirstJan1 | 1月1日を含む週を年度の第1週とする(規定値) |
| 2 | vbFirstFourDays | 7日のうち少なくとも4日が新年度に含まれる週を年度の第1週とする |
| 3 | vbFirstFullWeek | 全体が新年度に含まれる最初の週を年度の第1週とする |
DateDiff 関数の使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub Sample_DateDiff() Dim myDate1 As Date, myDate2 As Date Dim msg myDate1 = #4/20/2005 7:08:21 PM# myDate2 = Now msg = "myDate1 :" & myDate1 & Chr(13) & _ "myDate2 :" & myDate2 & Chr(13) & _ "yyyy(年) :" & DateDiff("yyyy", myDate1, myDate2) & Chr(13) & _ "m(月) :" & DateDiff("m", myDate1, myDate2) & Chr(13) & _ "d(日) :" & DateDiff("d", myDate1, myDate2) & Chr(13) & _ "ww(週) :" & DateDiff("ww", myDate1, myDate2) & Chr(13) & _ "y(年日) :" & DateDiff("y", myDate1, myDate2) & Chr(13) & _ "w(週日) :" & DateDiff("w", myDate1, myDate2) & Chr(13) & _ "q(四半期):" & DateDiff("q", myDate1, myDate2) & Chr(13) & _ "h(時) :" & DateDiff("h", myDate1, myDate2) & Chr(13) & _ "n(分) :" & DateDiff("n", myDate1, myDate2) & Chr(13) & _ "s(秒) :" & DateDiff("s", myDate1, myDate2) Debug.Print msg End Sub |
実行結果
関連記事
-
-
変数が日付型かどうかをチェックする( IsDate 関数 )
IsDate 関数の使い方 【書式】 result = IsDate( expr …
-
-
インプットボックスを表示する(InputBox関数・InputBoxメソッド)
「InputBox関数」と「InputBoxメソッド」の違い 「InputBox …
-
-
四捨五入・切り上げ・切り捨て・丸め(Round 関数 他)
Round 関数(丸め)の使い方 【書式】 value = Round ( ex …
-
-
日付時刻:日付時刻から情報取得( DatePart 関数 )
DatePart 関数(日付・時刻の値から情報を取得) 【書式】 result …
-
-
ユーザー設定リストを使って並べ替える(Sort)
VBAでリスト、テーブルを並べ替える(Sort) VBAで、ソートを行うには、S …
-
-
フォント 太字・斜体(Bold, Italic, FontStyle プロパティ)
太字の設定(Bold プロパティ) Bold プロパティは、フォントを太字にする …
-
-
変数のデータ型・宣言(Dim ステートメント)
変数の宣言 一般的な方法 【書式】 Dim varname [ As type, …
-
-
VBA の演算子(比較演算子)
比較演算子 比較演算子による演算の結果は「真」の場合は「True」、「偽」の場合 …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
指定した数のスペースを挿入する(Spc 関数)
指定した数のスペースを挿入 指定した数のスペースを挿入するには、Spc 関数を使 …
