TKSoft-Online

Werktage berechnen PDF Drucken E-Mail
( 3 Votes )
MS-Access Codes - Codeschnipsel Datum/Zeit
  
Freitag, den 07. März 2008 um 06:00 Uhr

Problemstellung:

Wie berechnet man schnell mal die Anzahl von Werktagen
(5 oder 6 Tage Woche) ohne Berücksichtigung von Feiertagen?


Public Enum CalcType
    Tage_5 = 0
    Tage_6 = 1
End Enum

Public Function CalcDays(dtStart As Date, dtEnd As Date, _
    Optional Typ As CalcType = Tage_5) As Integer
    '--------------------------------------------------------------------
    ' Procedure : CalcDays
    ' DateTime  : 04.03.2008 16:23
    ' Author    : TommyK
    '--------------------------------------------------------------------
    Dim iDiff As Integer
    Dim i As Integer
    Dim iResult As Integer
    Dim dtTemp As Date

    On Error GoTo CalcDays_Error

    iDiff = DateDiff("d", dtStart, dtEnd)

    For i = 0 To iDiff
        dtTemp = DateAdd("d", i, dtStart)
        If Typ = Tage_5 Then
            If Weekday(dtTemp, vbMonday) <> 6 And _
            Weekday(dtTemp, vbMonday) <> 7 Then
                iResult = iResult + 1
            End If
        Else
            If Weekday(dtTemp, vbMonday) <> 7 Then iResult = iResult + 1
        End If
    Next i

    CalcDays = iResult

    On Error GoTo 0
    Exit Function

CalcDays_Error:
    Dim strErrString As String
    strErrString = "Error Information..." & vbCrLf
    strErrString = strErrString & "Error#: " & Err.Number & vbCrLf
    strErrString = strErrString & "in Zeile: " & Erl & vbCrLf
    strErrString = strErrString & "Description: " & Err.Description
    MsgBox strErrString, vbCritical + vbOKOnly, "Error in procedure CalcDays"
End Function

 

Aufruf:


Dim i As Integer, j As Integer
i = CalcDays("18.02.2008""05.03.2008")
j = CalcDays("18.02.2008""05.03.2008", Tage_6)

  

Ergebnis:
i wäre =13 und j wäre=15

DatumKlicks
Total4238
Do. 241
Mi. 232
Di. 229
Mo. 212
So. 204
Sa. 191
Fr. 183
Aktualisiert ( Freitag, den 02. Juli 2010 um 08:36 Uhr )
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
173486 Downloads