OVH Cloud OVH Cloud

No. de la semaine

6 réponses
Avatar
Annie L.
Comment fait-on pour avoir le no. de la semaine de l'année (1 à 52) Ex.: 23
février = 8e semaine de l'année.

Merci pour votre aide

6 réponses

Avatar
Zoury
Salut Annie! :O)

Voici un exemple :
'***
Public Sub Main()

Console.WriteLine(GetWeekOfYear(DateTime.Now))

End Sub

Public Function GetWeekOfYear(ByVal dt As DateTime) As Int32

Return DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear( _
DateTime.Today, _
DateTimeFormatInfo.CurrentInfo.CalendarWeekRule, _
DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek)

End Function
'***

--
Cordialement
Yanick
MVP pour Visual Basic
"Annie L." a écrit dans le message de
news:
Comment fait-on pour avoir le no. de la semaine de l'année (1 à 52) Ex.:


23
février = 8e semaine de l'année.

Merci pour votre aide


Avatar
Zoury
...

Public Function GetWeekOfYear(ByVal dt As DateTime) As Int32

Return DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear( _


dt, _
DateTimeFormatInfo.CurrentInfo.CalendarWeekRule, _
DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek)

End Function




--
Cordialement
Yanick
MVP pour Visual Basic
Avatar
Annie L.
Cette fonction fonctionne très bien mais il me donne le no. de semaine "9"
pour cette semaine. Je suis allez vérifier sur différents calendriers et j'ai
remarqué que le no. semaine inscrit est "8". Lequel est correct?

"Zoury" wrote:

....

> Public Function GetWeekOfYear(ByVal dt As DateTime) As Int32
>
> Return DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear( _
dt, _
> DateTimeFormatInfo.CurrentInfo.CalendarWeekRule, _
> DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek)
>
> End Function


--
Cordialement
Yanick
MVP pour Visual Basic





Avatar
Isabelle Prawitz
Bonjour !
A priori le 2e paramètre correspond à la première semaine de l'année. Pour nous Français c'est la première semaine de 4 jours
(FirstFourDays)
A+
Isa

"Annie L." a écrit dans le message de
news:
Cette fonction fonctionne très bien mais il me donne le no. de semaine "9"
pour cette semaine. Je suis allez vérifier sur différents calendriers et j'ai
remarqué que le no. semaine inscrit est "8". Lequel est correct?

"Zoury" wrote:

> ....
>
> > Public Function GetWeekOfYear(ByVal dt As DateTime) As Int32
> >
> > Return DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear( _
> dt, _
> > DateTimeFormatInfo.CurrentInfo.CalendarWeekRule, _
> > DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek)
> >
> > End Function
>
>
> --
> Cordialement
> Yanick
> MVP pour Visual Basic
>
>
>


Avatar
Annie L.
Que veux-tu dire par là?
Est-ce que je dois changer le 2e paramètre? et comment?
Est-ce windows qui gère le calendrier?
J'aimerais avoir plus de précision sur ce sujet car le logiciel que je monte
est destinée au marché international!
Merci de ton aide !

"Isabelle Prawitz" wrote:

Bonjour !
A priori le 2e paramètre correspond à la première semaine de l'année. Pour nous Français c'est la première semaine de 4 jours
(FirstFourDays)
A+
Isa

"Annie L." a écrit dans le message de
news:
> Cette fonction fonctionne très bien mais il me donne le no. de semaine "9"
> pour cette semaine. Je suis allez vérifier sur différents calendriers et j'ai
> remarqué que le no. semaine inscrit est "8". Lequel est correct?
>
> "Zoury" wrote:
>
> > ....
> >
> > > Public Function GetWeekOfYear(ByVal dt As DateTime) As Int32
> > >
> > > Return DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear( _
> > dt, _
> > > DateTimeFormatInfo.CurrentInfo.CalendarWeekRule, _
> > > DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek)
> > >
> > > End Function
> >
> >
> > --
> > Cordialement
> > Yanick
> > MVP pour Visual Basic
> >
> >
> >





Avatar
Zoury
> Est-ce que je dois changer le 2e paramètre? et comment?



Le paramètre "role" définit la règle à employée pour déterminer la première
semaine de l'année. Je te recommande de lire la fiche d'aide la fonction
GetWeekOfYear() ainsi que de l'énumération CalendarWeekRule. Cette dernière
explique en détail le rôle du paramètre "role" en fournissant des exemples.

Est-ce windows qui gère le calendrier?
J'aimerais avoir plus de précision sur ce sujet car le logiciel que je


monte
est destinée au marché international!



DateTimeFormatInfo.CurrentInfo te permet d'employer les configurations du
système sur lequel le programme fonctionne. Ce sera donc très utile pour ton
programme. ;O)


--
Cordialement
Yanick
MVP pour Visual Basic