2009-03-20 6 views

Répondre

2
Dim d As DateTime = #1/20/2009# 
    d = d.AddDays(DayOfWeek.Saturday - d.DayOfWeek) 
    Dim myCal As New System.Globalization.GregorianCalendar 
    Dim wkOFyr As Integer = myCal.GetWeekOfYear(d, _ 
               Globalization.CalendarWeekRule.FirstDay, _ 
               DayOfWeek.Sunday) 
    Dim s As String 
    s = d.ToString("yy") & wkOFyr.ToString.PadLeft(2, "0"c) 
2

En supposant que vos semaines commencent le dimanche, vous pourriez probablement faire quelque chose comme ça pour obtenir le samedi de la semaine en cours:

Dim daysToAdd As Integer = DayOfWeek.Saturday - yourDate.DayOfWeek 
Dim dateSaturday as Date = yourDate.AddDays(daysToAdd) 

Je n'ai pas testé cependant. Ensuite, vous pouvez obtenir le weekyear en faisant quelque chose comme:

Dim weekYear As Integer = CInt(Math.Ceiling(dateSaturday.DayOfYear/7)) 

En utilisant la logique inverse, vous pouvez trouver le samedi correspondant au weekyear.

Questions connexes