ランダムな日付を作成したい
任意の日付の間でランダムな日付取得をしたいケースがあります。
単純なランダム数値は乱数を発生させるRnd関数で可能なため、Rnd関数を応用します。
指定した日付範囲内で、ランダムな日付を取得する方法を説明します。
ランダムな日付を取得するサンプルコード
sDate→開始日付、eDateを終了日付とし、その間の日付を取得します。
fmtは取得する表示形式です。その他形式はこちらを参照ください。
'■指定範囲内でランダムな日付を取得
Public Function Call_RndDate(sDate As Date, eDate As Date, ByVal fmt As String)
Dim rnd As Date
Randomize
rnd = Int((eDate - sDate + 1) * rnd + sDate)
Call_RndDate = Format(rnd, fmt)
End Function
実際の使い方
Public Sub sample()
Debug.Print Call_RndDate("2021/01/01", "2021/12/31", "gggee年mm月dd日") '令和03年10月10日
Debug.Print Call_RndDate("2021/01/01", "2021/12/31", "yyyy/mm/dd") '2021/01/19
Debug.Print Call_RndDate("2021/01/01", "2021/12/31", "yy.m.d") '21.6.12
’実際にはランダムなので、上記取得例はサンプルです。
End Sub



コメント