Wann war doch gleich die KW 17 - keinen Kalender mit Wochenangabe zur Hand, dann hätte ich eine Tip... Die VB Boardmittel bietet zwar die Möglichkeit, zu einem Datum die entsprechende Kalenderwoche zu ermitteln, der umgekehrte Weg wurde anscheinend nicht berücksichtigt. Der Aufruf erfolgt über Woche(Kalenderwoche, Jahr, ggf. noch der Definition des ersten Wochetages, und/oder der Definition der ersten Kalenderwoche). Über die beiden Variablen von und bis gibts dann als Datum Anfang und Ende der gesuchten Woche zurück. Den nachfolgenden Code bitte in ein Modul einfügen (da als "Pubic" deklariert) Public Type Week von As Date bis As Date End Type Public Function Woche(ByVal KW As Integer, _ ByVal Jahr As Integer, _ Optional FirstDayOfWeek As VbDayOfWeek = vbMonday, _ Optional FirstWeekOfYear As VbFirstWeekOfYear = vbFirstFourDays _ ) As Week Dim Datum As Date ' Datum auf den 7. Januar setzen, dem größtmöglichen ' Wert für den Beginn der ersten Kalenderwoche Datum = "07.01." & Jahr ' Wochenbeginn der ersten Kalenderwoche ermitteln While (Format(Datum, "WW", FirstDayOfWeek, FirstWeekOfYear) <> 1) Or _ (Weekday(Datum, FirstDayOfWeek) <> 1) Datum = Datum - 1 Wend ' Wochenbeginn der gesuchten KW ermitteln Datum = Datum + 7 * (KW - 1) Woche.von = Datum Woche.bis = Datum + 6 End Function Beispiel Dim iKW As Integer Dim iJahr As Integer Dim tWoche As Week iKW = 15 ' Kalenderwoche iJahr = 2002 ' Kalenderjahr tWoche = Woche(iKW, iJahr) MsgBox "Kalenderwoche " & CStr(iKW) & ":" & vbCrLf & _ Woche.Von & " - " & Woche.Bis Dieser Tipp wurde bereits 14.683 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung sevOutBar 4.0 Vertikale Menüleisten á la Outlook Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. |
||||||||||||||||
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. |