SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

VB 基礎編 (その八) 日付時間関数 DateSerial、DateDiff、DateAdd、DateValue

■Is...

  IsArray(変数)
          |_ 配列か調べる

  IsDate(変数)
         |_ 日付か調べる

  IsEmpty(変数)
          |_ 使われているか調べる

  IsNull(変数)
         |_ NULL 値か調べる

  IsNumeric(変数)
            |_ 数値か調べる

  IsObject(変数)
            |_ オブシェクトか調べる

  それぞれ該当する場合は TRUE が、そうでない場合は FALSE が返る。

■データ型変換関数

  データ型の変換を行います。

  a = CBool(データ)  '** 論理型
  a = CByte(データ)  '** バイト型
  a = CCur(データ)   '** 通貨型
  a = CDate(データ)  '** 日付型
  a = CDbl(データ)   '** 倍精度型
  a = CDec(データ)   '** 10 進型
  a = CInt(データ)   '** 整数型
  a = CLng(データ)   '** 長整数型
  a = CSng(データ)   '** 単精度型
  a = CVar(データ)   '** バリアント型
  a = CStr(データ)   '** 文字列型
           |_ 変数、または、演算結果

  旧 VB 互換データ型の変換を行います。

  a = CVDate(データ) '** 内部形式 Date のバリアント型
      |_ VB6 では、CDate を使用する

■timer

  00:00:00 からの通算コンピュータ時間を返します。
  確か、1/100 セコンドぐらいの単位です。

■DateSerial

  指定した年月日に対応する内部処理 Date 型の Variant 値を返す。

  dim dtv as variant

  dtv = DateSerial(2001, 8, 1)
  |                |     |  |_ 日
  |                |     |_ 月
  |                |_ 年
  |_ 内部処理 Date 型の Variant 値

■DateDiff

  ふたつの日付間隔(日付範囲)を求める。
  (日付計算、日数計算、カレンダー計算、経過日付)

  dim dtv as variant

  dtv = DateDiff(interval, "2001.1.1", "2001.10.16")
  |              |          |           |_ 日付2
  |              |          |_ 日付1
  |              |_ 時間単位
  |                 yyyy 年
  |                 q    四半期
  |                 m    月
  |                 y    年間通算日
  |                 d    日
  |                 w    週日
  |                 ww   週
  |                 h    時
  |                 n    分
  |                 s    秒
  |_ 内部処理 Date 型の Variant 値

  dtv = DateDiff(interval, date1, date2, firstdayofweek, firstweekofyear)
         0 vbUseSystem NLS API の設定値 _|               |
         1 vbSunday    日(既定値)                        |
         2 vbMonday    月                                |
         3 vbTuesday   火                                |
         4 vbWednesday 水                                |
         5 vbThursday  木                                |
         6 vbFriday    金                                |
         7 vbSaturday  土                                |
                                                         |
  0 vbUseSystem     NLS API の設定値 ____________________|
  1 vbFirstJan1     1 月 1 日を含む週を年度の第 1 週(既定値)
  2 vbFirstFourDays 7 日のうち少なくとも 4 日が新年度に含まれる週を年度の第 1 週
  3 vbFirstFullWeek 新年度に含まれる最初の週を年度の第 1 週

■DateAdd

  日付の演算を行う。
  (日付計算、日数計算、カレンダー計算)

  dim dtv as variant

  dtv = DateAdd(interval, 1, "2001.10.16")
  |              |        |           |_ 日付2
  |              |        |_ 加算数値
  |              |_ 時間単位
  |                 yyyy 年
  |                 q    四半期
  |                 m    月
  |                 y    年間通算日
  |                 d    日
  |                 w    週日
  |                 ww   週
  |                 h    時
  |                 n    分
  |                 s    秒
  |_ 内部処理 Date 型の Variant 値

  dtv = DateAdd("d", 1, "2001.10.16")  '一日後
  dtv = DateAdd("m", 1, "2001.10.16")  '一ヶ月後
  dtv = DateAdd("m", -1, "2001.10.16") '一ヶ月前

■DateValue

  内部処理 Date 型の Variant 値を返す。

  dim dtv as variant

  dtv = DateValue("February 1, 2001")
  dtv = DateValue("2001/1/1")
  dtv = DateValue("2001.1.1")
  |                |_ 日付
  |_ 内部処理 Date 型の Variant 値

■TimeValue

  内部処理 Date 型の Variant 値を返す。

  dim dtv as variant

  dtv = TimeValue("5:30PM")
  dtv = TimeValue("5:30:00PM")
  dtv = TimeValue("17:30:00")
  |                |_ 時間
  |_ 内部処理 Date 型の Variant 値

■DatePart

  日付時間の分解を行う。

  dtv = DatePart(interval, dt)
  |              |         |_ 日付型
  |              |_ "yyyy" 年
  |                 "q"    四半期
  |                 "m"    月
  |                 "y"    年
  |                 "d"    日
  |                 "w"    週日
  |                 "ww"   週
  |                 "h"    時
  |                 "n"    分
  |                 "s"    秒
  |_ 日付時間分解値

  ゼロ埋め書式変換するなら、次のようにすれば良い。

  s = FixZero(datepart("d", dt), 2)

public function FixZero(n as long, l as long) as string

'** ゼロ埋め
  FixZero = right(string(l, "0") & n, l)

end function

■FormatDateTime

  日付時間形式の文字列を返す。
  (システム日付、システム時間、現在日付取得、現在時刻取得)

  dts = FormatDateTime(dt, 0)
  |                    |   |_ 0 vbGeneralDate 日付時間を短い形式
  |                    |      1 vbLongDate    日付を長い形式
  |                    |      2 vbShortDate   日付を短い形式
  |                    |      3 vbLongTime    時間を長い形式
  |                    |      4 vbShortTime   時間を短い形式
  |                    |_ 日付型
  |_ フォーマット文字列

■Weekday

  何曜日か返す。

  dim yb as integer

  yb = Weekday("2001.10.03")
  |_ 1 日
     2 月
     3 火
     4 水
     5 木
     6 金
     7 土

■Date

  日付を取得、または、設定する。

  date = "2001.10.10"

■Time

  時間を取得、または、設定する。

  time = "18:02:00"

■VB 基礎編資料
■VB 入門編資料
■VB ビジュアル編資料
■VB テクニック編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK