Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
292to296
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Feiertag bestimmen

Feiertag bestimmen
15.08.2003 08:19:49
Frederik Fuhrmann
Guten Morgen!
Hat jemand eine Idee, wie ich rauskriege, ob eine Datumsvariable "Datum1" ein Feiertag ist?
Gruß
F.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Feiertag bestimmen
15.08.2003 08:28:24
Ramses
Hallo,
wenn du alle Feiertage in einem Array gespeichert hast oder diese in einer Tabelle definiert sind, kannst du die Variable im Array suchen oder via SVERWEIS im Tabellenbereich suchen lassen.
Die beweglichen Feiertage kannst du mit der Osterformel berechnen und die festen stehen ohnehin fest :-)
Wie ein Formelbeispiel aussehen kann ( Bedingte Formatierung ) siehst du in diesem Beispiel
http://www.office.gmxhome.de/_download_excel.htm
kalender.zip
Gruss Rainer

AW: Feiertag bestimmen
15.08.2003 08:31:48
WernerB.
Hallo Frederik,
dazu brauchst Du eine Liste mit allen fixen und beweglichen Feiertagen Deines Bundeslandes. Dann kannst Du diese Liste auf Übereinstimmung mit Deiner Datumsvariablen "Datum1" durchsuchen.
Gruß WernerB.

Anzeige
AW: Feiertag bestimmen
15.08.2003 08:41:15
Frederik Fuhrmann
D.h. ich muss die Feiertage in einer Tabelle hinterlegen, gut, dachte halt, da gäbe es eine einfachere Möglichkeit.
Danke
Gruß
Frederik

AW: Feiertag bestimmen (VBA-Fkt.)
15.08.2003 09:36:45
Sigi E.
Hallo Frederik,
mit folgenden drei VBA-Funktionen geht's auch ...

Function IstFeiertag(Datum As Date) As Boolean
If FeiertagName(Datum) <> "" Then
IstFeiertag = True
Else
IstFeiertag = False
End If
End Function


Function FeiertagName(Datum As Date) As String
Dim Txt As String
If Datum = Osterdatum(Year(Datum)) - 2 Then
Txt = "Karfreitag"
ElseIf Datum = Osterdatum(Year(Datum)) Then
Txt = "Ostersonntag"
ElseIf Datum = Osterdatum(Year(Datum)) + 1 Then
Txt = "Ostermontag"
ElseIf Datum = Osterdatum(Year(Datum)) + 39 Then
Txt = "Christi Himmelfahrt"
ElseIf Datum = Osterdatum(Year(Datum)) + 49 Then
Txt = "Pfingstsonntag"
ElseIf Datum = Osterdatum(Year(Datum)) + 50 Then
Txt = "Pfingstmontag"
ElseIf Datum = Osterdatum(Year(Datum)) + 60 Then
Txt = "Fronleichnam"
ElseIf Datum = DateSerial(Year(Datum), 1, 1) Then
Txt = "Neujahr"
ElseIf Datum = DateSerial(Year(Datum), 1, 6) Then
Txt = "Hl. drei Könige"
ElseIf Datum = DateSerial(Year(Datum), 5, 1) Then
Txt = "Maifeiertag"
ElseIf Datum = DateSerial(Year(Datum), 8, 15) Then
Txt = "Mariä Himmelfahrt"
ElseIf Datum = DateSerial(Year(Datum), 10, 3) Then
Txt = "Tag d. dt. Einheit"
ElseIf Datum = DateSerial(Year(Datum), 10, 31) Then
Txt = "Reformationstag"
ElseIf Datum = DateSerial(Year(Datum), 11, 1) Then
Txt = "Allerheiligen"
ElseIf Datum = DateSerial(Year(Datum), 12, 25) Then
Txt = "Weihnachten1"
ElseIf Datum = DateSerial(Year(Datum), 12, 26) Then
Txt = "Weihnachten2"
ElseIf Datum = DateSerial(Year(Datum), 12, 25) - _
Weekday(DateSerial(Year(Datum), 12, 25), _
vbMonday) - 32 Then
Txt = "Buß- u. Bettag"
Else
Txt = ""
End If
FeiertagName = Txt
End Function


Function Osterdatum(Jahr As Long)
Dim D As Long
D = (((255 - 11 * (Jahr Mod 19)) - 21) Mod 30) + 21
Osterdatum = DateSerial(Jahr, 3, 1) + D + (D > 48) + _
6 - ((Jahr + Jahr \ 4 + D + (D > 48) + 1) Mod 7)
End Function

Feiertage, die es in deiner Region nicht gibt, musst du noch aus dem Code löschen!
Gruß
Sigi

Anzeige
AW: Feiertag bestimmen (VBA-Fkt.)
15.08.2003 09:40:44
Frederik Fuhrmann
Guten Morgen Sigi!
Super, sowas hatte ich gesucht,
vielen Dank!
Gruß & schönes Wochenende
Frederik

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige