1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:

Für 32Bit und 64Bit Office Versionen

Wie kann ich unter Access ein ZufallsDatum erzeugen? 

1. Grundfunktion zum Erzeugen einer Zufallszahl

Public Function ZufallszahlAusgeben(lngUntergrenze As Long, lngObergrenze As Long)
  Randomize Timer
  ZufallszahlAusgeben = Int((lngObergrenze - lngUntergrenze + 1) _
                               * Rnd + lngUntergrenze)
End Function

2. Hilfsfunktion zum berechnen des letzten Tages des Monats

Public Function LastDayOfMonth(intYear As Integer, intMonth As Integer) As Integer
    Dim dtTmp As Date
   
    dtTmp = DateSerial(intYear, intMonth + 1, 0)
    LastDayOfMonth = Day(dtTmp)
End Function 

3. Funktion zum Berechnen eines Datums

Public Function GetRandomizeDate() As Date
    Dim iDay As Integer, iMonth As Integer, iYear As Integer
   
    iMonth = ZufallszahlAusgeben(1, 12)
    iYear = ZufallszahlAusgeben(2000, 2010)
    iDay = ZufallszahlAusgeben(1, LastDayOfMonth(iYear, iMonth))
    GetRandomizeDate = DateSerial(iYear, iMonth, iDay)
End Function 

In dieser Funktion werden die Bereiche gesetzt und das Zufallsdatum zurück gegeben.
iMonth= Monatszahlen von 1-12
iYear= Jahreszahlen
iDay= 1- je nach Monat

Aufruf z.B.

MsgBox GetRandomizeDate
 

 

Ähnliche Artikel