Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Kalender Woche (KW) bestimmen
#3
Das funktioniert auch ganz gut bis auf die Jahre mit 53 Kalenderwochen. Da muss noch eine Abfrage rein:


Code:
Dim KW As Integer = 0
Dim Jahr As Integer = System.DateTime.Now.Year
Dim Monat As Integer = System.DateTime.Now.Month
Dim Tag As Integer = System.DateTime.Now.Day

Dim DT0 As New System.DateTime(Jahr, Monat, Tag)
Dim TagImJahr As Integer = DT0.DayOfYear

Dim dt1 As New System.DateTime(Jahr, 1, 1)
Dim dt31 As New System.DateTime(Jahr, 12, 31)

Dim TagderWocheAnfangJahr As Integer = dt1.DayOfWeek
Dim TagderWocheEndeJahr As Integer = dt31.DayOfWeek

KW = Cint((((TagderWocheAnfangJahr + 2) Mod 7) + 3 + TagImJahr) \ 7)

If KW = 0 Then
  Dim dt2 As New System.DateTime(Jahr - 1, 12, 31)
  Dim TagderWocheEndeJahrVorher As Integer = dt2.DayOfWeek

  Dim TageLetztesJahr As Integer = dt2.DayOfYear
  KW = Cint((((TagderWocheEndeJahrVorher + 2) Mod 7) + 3 + TageLetztesJahr) \ 7)
  ElseIf KW = 53 Then
 If TagderWocheAnfangJahr = 4 Or TagderWocheEndeJahr = 4 Then
         Else
          KW = 1
 End If
End If

' Beispiel: Wochendatei erzeugen für Protokollsegment 5
VOK.SetProtDBName 5, "KW_" & KW.ToString() & "_" & system.DateTime.Now.ToString("yyyy")

' Beispiel: Schreiben als ASCII in Gruppe 0
VDF.WriteAscii 0,50,"KW_" & KW.ToString() & "_" & System.DateTime.Now.ToString("yyyy")
Antworten


Nachrichten in diesem Thema
RE: Kalender Woche (KW) bestimmen - von S.Rings - 19.07.2012, 14:12
RE: Kalender Woche (KW) bestimmen - von J.Lebherz - 27.07.2012, 07:55
RE: Kalender Woche (KW) bestimmen - von crash0 - 05.10.2012, 13:29
RE: Kalender Woche (KW) bestimmen - von S.Rings - 08.10.2012, 15:53

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste