1 1 1 1 1 1 1 1 1 1 Rating 5.00 (1 Vote)

Problemstellung:

Wie berechnet man die Anzahl der Wochentage (Montage, Dienstage usw.) für einen Monat?

Public Enum Wochentag
    Montag = 1
    Dienstag = 2
    Mittwoch = 3
    Donnerstag = 4
    Freitag = 5
    Samstag = 6
    Sonntag = 7
End Enum
Function WTage(dtDate As Date, Optional WT As Wochentag = 1) As Integer
    Dim dtStart As Date, n As Integer
    Dim i As Integer
    dtStart = DateSerial(Year(dtDate), Month(dtDate), 1)
    n = DateSerial(Year(dtStart), Month(dtStart) + 1, 1) - dtStart
    For i = 1 To n
        If Weekday(dtStart - 1 + i, vbMonday) = WT Then
            WTage = WTage + 1
        End If
    Next i
End Function 

Aufruf z.B.:

MsgBox "Montag: " & WTage(Date, Montag) & vbNewLine & "Dienstag: " & WTage(Date, Dienstag) _
    & vbNewLine & "Mittwoch: " & WTage(Date, Mittwoch) & vbNewLine & _
    "Donnerstag: " & WTage(Date, Donnerstag) _
    & vbNewLine & "Freitag: " & WTage(Date, Freitag) & vbNewLine & _
    "Samstag: " & WTage(Date, Samstag) _
    & vbNewLine & "Sonntag: " & WTage(Date, Sonntag), , _
    "Anzahl der Wochentage für " & Month(Date) & "-" & Year(Date)

Ergebnis:

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

1.png1.png9.png8.png4.png0.png0.png
Heute71
Gestern75
Diese Woche392
Dieser Monat2054
Total1198400

  • IP: 54.81.102.236
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

1
Online

19. Juli 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...