即効テクニック

日付・文字列操作・演算

今月末日を調べる

(Access 97)
今月末日を調べるには、翌月の1日の年月日を取得しておいて、DateAdd関数を使う方法があります。
DateAdd関数は、指定された時間間隔を加算した日付を返します。
サンプルプロシージャでは、DateSerial関数で現在の日付から翌月の1日の年月日を取得して、その日付から-1日した日付を取得しています。

Sub Sample()
    Dim myDate As Date
    
    myDate = DateSerial(Year(Date), Month(Date) + 1, 1)
    
    MsgBox DateAdd("d", -1, myDate)

End Sub

DateSerial関数は、引数に指定した年、月、日に対応する値を返す関数で、構文は次のとおりです。

<構文> DateSerial(year, month, day)

指定項目 内容 
year   必ず指定します。この名前付き引数は整数型(Integer)のデータ形式で
     指定します。年を表す100〜9999の範囲の数値または数式を指定します。
month   必ず指定します。この名前付き引数は整数型(Integer)のデータ形式で
     指定します。月を表す1〜12の範囲の数値または任意の数式を指定します。
day    必ず指定します。この名前付き引数は整数型(Integer)のデータ形式で
     指定します。日を表す1〜31の範囲の数値または任意の数式を指定します。

 DateAdd関数は、指定された時間間隔を加算した日付を返します。
 構文は次のとおりです。

<構文> DateAdd(interval, number, date)

指定項目 内容 
interval 必ず指定します。追加する時間間隔を表す文字列式を指定します。

     設定値   内容
     yyyy    yyyy
     q      四半期
     m      月
     y      年間通算日
     d      日
     w      週日
     ww     週
     h      時
     n      分
     s      秒
number  必ず指定します。追加する時間間隔の数を表す数式を指定します。
     将来の日時を取得するには正の数を指定します。
     過去の日時を取得するには負の数を指定します。
date   必ず指定します。時間間隔を追加する日付を表す値またはリテラル文字列を指定します。