Bonjour à tous,

J'ai écrit une fonction qui me calcul la date du vendredi connaissant le numéro de semaine et l'année:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
 
Function jour_semaine_Dimanche(Semaine, annee)
	Dim JourDeLAn
	Dim MonJourSem
	Dim NbresJours
	Dim An
	Dim Sem
 
	An = Cint(annee)
	Sem = Cint(Semaine)
 
	' Recherche le jour de l'an de l'annee
	JourDeLAn = CDate("01/01/" & An)
	' Recherche le jour de l'an tombe quel jour (Lundi, mardi, .......)
	MonJourSem = WeekDay(JourDeLAn, 2)
 
	jour_semaine_Dimanche = Cstr(((CDate("01/01/" & An)) - MonJourSem) + (((Sem) - 1) * 7) + 5)
 
End Function
 
 
Function GetVendredi(wn, y)
	GetVendredi = DateAdd("ww", wn, CDate("01/01/" & y)) - Weekday(CDate("01/01/" & y)) + 6
End Function
 
Function SelectFunc(wn, y)
 
	If WeekDay(CDate("01/01/" & y)) > 5 then
		SelectFunc = GetVendredi(wn,y)
	Else
		SelectFunc = jour_semaine_Dimanche(wn,y)
    End If
End Function
 
Message = SelectFunc(45,2012)
MsgBox "date " & Message
Malheureusement cela ne fonctionne pas pour l'année 2012 et je ne comprends pas trop pourquoi .

Si quelqu'un pouvait m'aider ......

Merci d'avance