VBAにて特定の日が属する月のすべての日付を取得する
はじめに
メモ書き兼テストです。
VBAにて、今月の日付すべてを取得する方法がよくわからなかったので、
サイト等参考にしながら作ったものです。
もっと簡単なものがあったり、間違っているものあれば、
ご教授いただけると幸いです。
Version
excel 2016にて作成。
コード
Function ReturnDatesOfMonth(TheDate As Date) As Collection
Dim DatesOfMonth As Collection
Set DatesOfMonth = New Collection
Dim LastDay As Date
Dim FirstDay As Date
LastDay = DateSerial(Year(TheDate), Month(TheDate) + 1, 0) '今月末の日付を取得
FirstDay = DateSerial(Year(TheDate), Month(TheDate), 0) + 1 '今月頭の日付を取得
Dim i As Integer
For i = 0 To DateDiff("d", FirstDay, LastDay) 'datediffで今月が何日あるかを計算
DatesOfMonth.Add (FirstDay + i) '今月の日付をすべて格納
Next
Set ReturnDatesOfMonth = DatesOfMonth
End Function
参照サイト
DateSerial関数について
https://asatte.biz/excel-vba-putday/DateDiff関数について
https://www.tipsfound.com/vba/04008
Author And Source
この問題について(VBAにて特定の日が属する月のすべての日付を取得する), 我々は、より多くの情報をここで見つけました https://qiita.com/mouseofsack911/items/f8f8ed5e663afe590ca5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .