# Letzten Werktag (Mo-Fr) eines aktuellen Monats ermitteln



## Blaubmania (7. Juli 2006)

Hiho,

bin bischen neu in Sachen VB wollte mal nach horchen da die Suchfunktion leider nicht viel hergegeben hat ob es vlt. ne Funktion gibt bzw. wenn nicht wie man den letzten Werktag (Mo-Fr) am besten noch den vorletzten eines aktuellen Monats ermitteln kann.
Bin für jede Idee dankbar.

Thx


----------



## Shakie (8. Juli 2006)

Ich beschränke mich mal auf eine knappe Antwort, da es schon recht spät ist ^^
Es gibt die Funktion "Weekday" (vba.DateTime.Weekday), welche dir eine Nummer zwischen 1 und 7 für ein bestimmtes Datum zurückgibt. Damit könntest du ermitteln, was der letzte Tag eines Monats für ein Wochentag ist. Wenn es sich dabei um einen Samstag oder Sonntag handelt, musst du halt vom Datum ein bzw. zwei Tage abziehen um den letzten Werktag zu erhalten.

Beachte: die Weekday geht standardmäßig davon aus, dass der erste Tag der Woche ein Sonntag ist. Du solltest ihr deshalb den 2.Parameter auch angeben:

```
vba.DateTime.Weekday(now,vbMonday)
```
oder:

```
vba.DateTime.Weekday(now,vbUseSystemDayOfWeek)
```


----------



## Blaubmania (9. Juli 2006)

Thx für die Antwort, aber leider wars ned ganz das was ich meinte  Ich versuch es nochmal ordentlicher auszuführen.

Also wenn wir von diesem Monat Juli ausgehen wäre der vorletze Werktag der 28.07. im August wäre es der 30.08. ich wollte das dieser Tag automatisch errechnet wird von einer Funktion etc. in der ich dann das aktuelle Datum vergleiche und schaue ob dies der vorletzte Werktag ist. das Problem ist halt das man nicht einfach sagen kann er soll den vorletzten Tag des Monats nehmen da dieser auch mal ein Wochenende sein kann und er dann bis zum Fr. zurück rechnen müsste.

Hoffe das es jetzt besser verständlich ankommt


----------

