bjr à tous,
j'ai un petit souci avec une fonction pour trouver le premier jour d'une semaine en fonction de l'année et et du numero de semaine.
voici la fonction trouvee dans la FAQ :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
Public Function PremierJourSemaine(ByVal numSemaine As Byte, ByVal annee As Integer) As Date
Dim d As Date
Dim numS As Integer
' premier jour de l'année
d = DateSerial(annee, 1, 1)
' numéro de la semaine du 1er janvier
numS = DatePart("ww", d, vbMonday, vbFirstFourDays)
' si le 1er janvier fait partie de la dernière semaine de l'année précédente
' alors passe à la semaine suivante (la première de la nouvelle année)
If numS <> 1 Then d = DateAdd("d", 7, d)
' calcule le premier jour de la première semaine de l'année
d = DateAdd("d", 1 - Weekday(d, vbMonday), d)
' ajoute (numSemaine-1) semaines
PremierJourSemaine = DateAdd("ww", numSemaine - 1, d)
End Function |
le champ "PremierJour a pour valeur par defaut :
Me.PremierJour.Value = PremierJourSemaine(Me.ChoixSemaine,Me.ChoixAnnee)
les 2 variables correspondent à 2 listes deroulantes... ça ne fonctionnent pas , ça me dit qu'il y une erreur de ( ou de ! ou de .
Alors que si je remplace les variables par un numero de semaine et un numero d'annee comme ça :
PremierJourSemaine(26,2006)
ça fonctionne ! quelqu'un peut-il m'aider ? Merci d'avance
Partager