Letzten Werktag (Mo-Fr) eines aktuellen Monats ermitteln

Blaubmania

Erfahrenes Mitglied
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
 
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:
Visual Basic:
vba.DateTime.Weekday(now,vbMonday)
oder:
Visual Basic:
vba.DateTime.Weekday(now,vbUseSystemDayOfWeek)
 
Zuletzt bearbeitet:
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
 
Zurück