vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Re: Feiertage ohne Outlook ermitteln 
Autor: me36835
Datum: 04.06.04 11:57

Hallo Chrissy,

bevor ich auf Deine Frage eingehe, hier die Funktion, die ich bevorzuge:

tg - Name der Funktion
given_Date - Das Datum, das überprüft werden soll
frei - ist Optional. Wenn man hier ein "False" mit gibt, werden auch Feiertage zurück gegeben, an denen in Nordrheinwestfalen gearbeitet werden muß.
Rückgabe - Name des Feiertags oder Name des Wochentags


Public Function tg(ByVal given_Date As Date, Optional frei As Boolean = True)
given_Date = DateValue(Format(given_Date, "yyyy/mm/dd"))
' ^^^ Hier wird die Uhrzeit vom Datum abgetrennt.
tg = Format(given_Date, "dddd")
' ^^^ Hier wird der Rückgabe Wert auf den Wochentag gesetzt. Montag, Dienstag 
' etc
Select Case Format(given_Date, "dd/mm")
' ^^^ Hier werden feste Feiertage ermittelt und ggf der Rückgabewert angepasst.
    Case "01/01"
        tg = "Neujahr"
    Case "01/05"
        tg = "Tag der Arbeit"
    Case "01/11"
        tg = "Allerheiligen"
    Case "03/05"
        If Not frei Then tg = "Thomas Geb."
    Case "03/10"
        tg = "Tag d.Dt. Einheit"
    Case "24/12"
        tg = "Heilig Abend"
    Case "25/12"
        tg = "1. Weihnachtsfeiertag"
    Case "26/12"
        tg = "2. Weihnachtsfeiertag"
    Case "31/12"
        tg = "Sylvester"
    Case Else
        Select Case given_Date - bew(Val(Format(given_Date, "yyyy")), "s")
' ^^^ zu allen beweglichen Feiertagen werden die Abstände zum Ostersonntag
' ^^^ ermittelt mit der Funktion bew(). Die Schreibe ich gleich.
            Case -46
                If Not frei Then tg = "Aschermittwoch"
            Case 39
                tg = "Christi Himmelfahrt"
            Case 60
                If Not frei Then tg = "Fronleichnam"
            Case -2
                tg = "Karfreitag"
            Case 1
                tg = "Ostermontag"
            Case 49
                tg = "Pfingstsonntag"
            Case 50
                tg = "Pfingstmontag"
            Case -48
                If Not frei Then tg = "Rosenmontag"
            Case 0
                tg = "Ostersonntag"
            Case -52
                If Not frei Then tg = "Weiberfastnacht"
            Case Else
                Select Case given_Date - (CDate("25/12/" & Format(given_Date, _
                  "yyyy")) - WeekDay("25/12/" & Format(given_Date, "yyyy"), _
                  vbMonday))
                    Case 0
                        tg = "4. Advent"
                    Case -7
                        tg = "3. Advent"
                    Case -14
                        tg = "2. Advent"
                    Case -21
                        tg = "1. Advent"
                    Case -32
                        If Not frei Then tg = "Buß- und Bettag"
                End Select
        End Select
End Select
End Function
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Feiertage mit Outlook ermitteln1.444chrissy04.06.04 08:30
Re: Feiertage mit Outlook ermitteln1.209me3683504.06.04 10:05
Re: Feiertage mit Outlook ermitteln930chrissy04.06.04 11:42
Re: Feiertage mit Outlook ermitteln1.023me3683504.06.04 13:06
Re: Feiertage mit Outlook ermitteln989chrissy04.06.04 13:57
Re: Feiertage ohne Outlook ermitteln924me3683504.06.04 11:57
Re: Bewegliche Feiertage berechnen3.596me3683504.06.04 12:06

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel