記事の詳細
Excel VBAでひと月前や後の日付を取得する方法
カラちゃん先生のエクセル講座でおなじみの唐澤です。
最近VBAを記述する機会があったので、そこで使用した関数をご紹介します。
今回は、ある日付から「ひと月前」や「ひと月後」の日付を取得する方法をご紹介します。
例えば、2016/4/20のひと月前の日付である2016/3/20を取得したい場合、
DateAdd関数を使用します。
今回のブログの見出しはコチラです!
構文
DateAdd(Interval,Num,Date)
引数Intervalには、追加する日付や時間の間隔を指定します。
引数Numには、Dateに対して増加させる日付や時間を指定します。
引数Dateには、Numを増加させる元になる日付や時間を指定します。
解説
指定された時間間隔を加算した日付と時刻を日付型 (Date) の値で返します。
なんのこっちゃ?という説明ですが、、、
引数Intervalに指定できる間隔は次のとおりです。
列挙値 | 数字列 | 加算する時間間隔の単位 |
---|---|---|
DateInterval.Day | d | 日付 : 整数。小数点以下は切り捨てられます。 |
DateInterval.DayOfYear | y | 日付 : 整数。小数点以下は切り捨てられます。 |
DateInterval.Hour | h | 時 : 整数。小数点以下は切り捨てられます。 |
DateInterval.Minute | n | 分 : 整数。小数点以下は切り捨てられます。 |
DateInterval.Month | m | 日付 : 整数。小数点以下は切り捨てられます。 |
DateInterval.Quarter | q | 四半期 : 整数値に切り捨てられます。 |
DateInterval.Second | s | 秒 : 整数。小数点以下は切り捨てられます。 |
DateInterval.Weekday | w | 日付 : 整数。小数点以下は切り捨てられます。 |
DateInterval.WeekOfYear | ww | 週 : 整数値に切り捨てられます。 |
DateInterval.Year | yyyy | 日付 : 整数。小数点以下は切り捨てられます。 |
DateAdd関数の使用例
2016/4/20のひと月前とひと月後をメッセージボックスで表示するサンプルです。
1 2 3 4 5 6 7 8 9 10 11 |
Sub Sample1() ’ひと月前の日付をメッセージボックスで表示 msgbox dateAdd("m", -1, #4/20/2016#) ' ひと月後の日付をメッセージボックスで表示 msgbox dateAdd("m", 1, #4/20/2016#) End Sub |
実際、VBEで入力した状態が下図です。
いかがでしょうか。
VBAで日付をあつかう機会は意外と多いですよね。
dateAdd関数、覚えておいてソンはありません!
コメント
この記事へのトラックバックはありません。
この記事へのコメントはありません。