Label1.Text = "Current weeknumber: " & GetWeekNumber(DateTime.Now)
...
Sub GetWeekNumber(ticks As Long) As Int
Dim currentThursday, firstThursday As Long
currentThursday = GetThursdayOfWeekInTicks(ticks)
firstThursday = GetThursdayOfWeekInTicks(DateTime.DateParse("01/04/" & (DateTime.GetYear(currentThursday))))
Return Floor((currentThursday - firstThursday) / DateTime.TicksPerDay / 7 + 1)
End Sub
Sub GetThursdayOfWeekInTicks(ticks As Long) As Long
Select DateTime.GetDayOfWeek(ticks)
' Sunday
Case 1
diff = -3
' Monday
Case 2
diff = 3
' Tuesdy
Case 3
diff = 2
' Wednesday
Case 4
diff = 1
' Thursday
Case 5
diff = 0
' Friday
Case 6
diff = -1
' Saturday
Case 7
diff = -2
End Select
Return DateTime.Add(ticks, 0, 0, diff)
End Sub