Feiertage berechnen und berücksichtigen - Teil 2

Die Methoden im Überblick

Für eine effiziente Nutzung der Klasse ist es wichtig, dass Sie wissen, wie die einzelnen Methoden anzuwenden sind und welche Werte sie zurückgeben. Eine Übersicht über die Schnittstellen- Elemente der Klasse enthält Tabelle 1.

Tabelle 1: Öffentliche Member der Klasse.

Methodendeklaration

Beschreibung

Function Ostersonnta (lngJahr As Long) As Variant

Gibt das Datum des angegebenen Jahres zurück, auf das der Ostersonntag fällt.

Function Ostermonta (lngJahr As Long) As Variant

Gibt das Datum des angegebenen Jahres zurück, auf das der Ostermontag fällt.

Function Karfreitag(lngJahr As Long) As Variant

Ermittelt das Datum von Karfreitag des angegebenen Jahres und gibt es zurück.

Function Pfingstsonnta (lngJahr As Long) As Variant

Berechnet das Datum von Pfingstsonntag und gibt es zurück.

Function Pfingstmonta (lngJahr As Long) As Variant

Gibt das Datum von Pfingstmontag zurück

Function Rosenmonta (lngJahr As Long) As Variant

Ermittelt das Datum des Jahres, auf das Rosenmontag fällt, und gibt dieses zurück.

Function Fastnacht(lngJahr As Long) As Variant

Gibt das Datum von Karnevals-Dienstag zurück.

Function Aschermittwoch(lngJahr As Long) As Variant

Berechnet das Datum von Aschermittwoch des angegebenen Jahres und gibt es zurück.

Function Himmelfahrt(lngJahr As Long) As Variant

Ermittelt den Termin von Himmelfahrt und gibt ihn für das angegebene Jahr zurück.

Function Fronleichnam(lngJahr As Long) As Variant

Berechnet das Datum von Fronleichnam und gibt es zurück.

Function Advent1(lngJahr As Long) As Date

Ermittelt das Datum des ersten Advents und gibt es zurück

Function Advent2(lngJahr As Long) As Variant

Ermittelt das Datum des zweiten Advents und gibt es zurück.

Function Advent3(lngJahr As Long) As Variant

Ermittelt das Datum des dritten Advents und gibt es zurück.

Function Advent4(lngJahr As Long) As Variant

Ermittelt das Datum des vierten Advents und gibt es zurück.

Function Bussundbettag(lngJahr As Long) As Variant

Berechnet den Termin von Buß- und Bettag und gibt ihn zurück

Function Volkstrauertag(lngJahr As Long) As Variant

Ermittelt das Datum an dem der Volkstrauertag liegt und gibt es zurück.

Function Totensonntag(lngJahr As Long) As Variant

Berechnet den Termin von Totensonntag und gibt diesen zurück.

Function SonntagImMonat(lngJahr As Long, bytMonat As Byte, bytSonntag As Byte) As Variant

Gibt das Datum des ersten, zweiten, dritten, vierten oder fünften Sonntag des Monats zurück. Dazu übergeben Sie nacheinander das Jahr, den Monat und die Nummer des Sonntags, also beispielsweise 5, wenn Sie den fünften Sonntag im Monat zurückgeben möchten. Falls es den angegebenen Sonntag in dem genannten Monat nicht gibt, gibt die Funktion eine entsprechende Feldermeldung zurück. Sie können also den Rückgabewert beispielsweise mit isDate prüfen. Handelt es sich um ein Datum, dann gibt es den nachgefragten Sonntag.

Function Erntedank(lngJahr As Long) As Date

Ermittelt den Termin des Erntedank-Festes und gibt diesen zurück.

Function Muttertag(lngJahr As Long) As Date

Ermittelt den Termin von Muttertag und gibt ihn zurück.

Function IstFeiertag(ByRef datDatum As Date,
yRef strName As String) As Boolean

Prüft, ob das angegebene Datum ein variabler Feiertag ist. Über den zweiten Parameter können Sie im Anschluss an den Funktionsaufruf abrufen, um welchen Feiertag es sich handelt, falls die Funktion True zurückgegeben hat.

Function IstSonntag(datDatum As Date) As Boolean

Gibt True zurück, wenn das angegeben Datum auf einen Sonntag fällt.

Function IstSamstag(datDatum As Date) As Boolean

Gibt True zurück, wenn das angegeben Datum auf einen Samstag fällt.

Function FixFeiertag(datDatum As Date,
strDateiname As String, Optional strLand) As String

Gibt den Namen des festen Feiertags zurück, falls das angegebene Datum auf einen festen Feiertag entfällt. Geben Sie den optionalen dritten Parameter nicht an, wird das Land nicht berücksichtigt.

Sub FeiertagSchreiben(strDateiname As String,

Schreibt die als Parameter übermittelten Daten zu einem festen Feiertag in

bytTag As Byte, bytMonat As Byte, strName As String,strLand As String)

die Textdatei, deren Dateiname und Pfad Sie als ersten Parameter angeben. Ist die Textdatei nicht vorhanden, wird sie erstellt.

Function Feiertag(datDatum As Date, Optional strDateiname) As String

Gibt den Namen des Feiertags zurück, dessen Datum übergeben wird. Falls auf das Datum kein Feiertag entfällt, gibt die Methode eine leere Zeichenfolge zurück. Lassen Sie den optionalen zweiten Parameter weg, werden nur die beweglichen Feiertage berücksichtigt, andernfalls auch alle festen Feiertage, die in der Datei gespeichert sind.

Function buildPath(strPfad As String, strName As String) As String

Setzt aus den beiden übergebenen Parametern eine vollständige Pfadangabe zusammen und ergänzt dabei fehlende Pfadtrennzeichen.

Function fileExists(strDatei As String) As Boolean

Gibt True zurück, wenn die angegebene Datei vorhanden ist, andernfalls False.

Function getPfad() As String

Gibt den Pfad der aktuellen Datenbank, des Word-Dokuments oder der Arbeitsmappe zurück, die den Code ausführt.

Zusammenfassung

Die Klasse ist denkbar einfach einzusetzen. Sie können damit nicht nur problemlos Feiertage berechnen, sondern eben auch Datumsangabenprüfen. Sie lässt sich daher flexibel auch in anderen Office-VBA-Anwendungen einsetzen.