Datum
aus Kalenderwoche errechnen
Die nachfolgende Funktion errechnet aus der übergebenen Kalenderwoche
zum angegebenen Jahr das Start- oder End-Datum
a = KwNachDatum(22, 2006, "von") gibt das Startdatum (29.05.2006)
der Kalenderwoche zurück
a = KwNachDatum(22, 2006, "bis") gibt das Enddatum (04.06.2006) der
Kalenderwoche zurück
| Code: |
Public Function KwNachDatum(xKW As Integer, xJJ As Integer, _
xTyp As String) As String
' ----------------------------------------------------------
' Diese Funktion gibt für die mitgegebene Kalenderwoche
' des mitgegebenen Jahres das zugehörige Datum zurück.
' Über den Typ wird angegeben ob der 1. 'von' Tag oder
' der 7. 'bis' Tag der Kalenderwoche zurückgegeben wird.
' ----------------------------------------------------------
On Error GoTo fehler
Dim mDat As Date
Dim nDat As Date
Dim t As Integer
Dim jMax As Integer
Dim mKW As Integer
' Falsche Wochenangabe abfangen
If xKW > 52 Then
If Int(Format(DateSerial(xJJ, 12, 31), "WW", 2, 2)) < xKW Then
KwNachDatum = "KW " & xKW & "/" & xJJ & " nicht möglich"
GoTo ende
End If
End If
' Tage im Jahr festlegen
jMax = 365
' Bei Schaltjahr einen Tag abziehen
If IsDate("29.02." & xJJ) Then
jMax = jMax + 1
End If
' Tage durchlaufen und Woche auswerten
For t = 0 To jMax
nDat = DateSerial(xJJ, 1, 1) + t
If xKW = Int(Format(nDat, "WW", 2, 2)) Then
mDat = nDat
Exit For
End If
Next t
' Typ auswerten und Datum übergeben
If xTyp = "von" Then
mDat = mDat - 4
For t = 0 To 4
nDat = mDat + t
If xKW = Int(Format(nDat, "WW", 2, 2)) Then
mDat = nDat
Exit For
End If
Next t
KwNachDatum = mDat
Else
mDat = mDat + 6
For t = 0 To 6
nDat = mDat - t
If xKW = Int(Format(nDat, "WW", 2, 2)) Then
mDat = nDat
Exit For
End If
Next t
KwNachDatum = mDat
End If
ende:
Exit Function
fehler:
Resume ende
End Function
|
Viele weitere Tipps & Tricks aus der Praxis für die Praxis finden
Sie auf unserer AP-Access-Tools
Vol.1
| | | | 
|
Auf der AP-Access-Tools Vol.1 finden Sie weitere 320
Tipps & Tricks sowie 250 Access-Beispiel/Anwendungen mit offenen Quellcode!
Die Access-Tools-CD mit über 400 MByte Inhalt - für Access- und VB-Entwickler
256 Access-Beispiele mit offenem Code
45 Add-Ins und ActiveX-Komponenten (Freeware)
16 VB-Projekt inkl. Source
321 Tipps & Tricks für Access und VB
Plus 11 Entwicklerversionen (9 davon mit Source!)
Plus 3 Vollversionen und
Plus riesiger Datenpool
Holen Sie sich jetzt Ihre AP-Access-Tools-CD zum Superpreis von nur EUR 24,95! | | | | |
|
|