Premier jour de la semaine dimanche

Alguiche

XLDnaute Junior
Bonjour à tous,

J'utilise très souvent cette fonction de L.Longre pour déterminer les semaines, mais actuellement je me trouve au Moyen Orient où les weekends sont le vendredi et le samedi et la semaine commence donc le dimanche. Quelqu'un pourrait-il m'adapter cette fonction en conséquence, car je n'ai pas encore compris comment elle fonctionne et les essais que j'ai faits sont pour l'instant infructueux.

Function SemISOs(dat As Date) As Integer '----------------- L.Longre
Dim a As Integer
a = Int((dat - DateSerial(Year(dat), 1, 1) + _
((Weekday(DateSerial(Year(dat), 1, 1)) + 1) _
Mod 7) - 3) / 7) + 1
If a = 0 Then
a = SemISOs(DateSerial(Year(dat) - 1, 12, 31))
ElseIf a = 53 And (Weekday(DateSerial(Year(dat), 12, 31)) - 1) _
Mod 7 <= 3 Then
a = 1
End If
SemISOs = a
End Function


Salutations
Al
 

Creepy

XLDnaute Accro
Re : Premier jour de la semaine dimanche

Bonjour le Forum,

Il faut que tu modifie tes formules comme cela :

Weekday(DateSerial(Year(dat), 1, 1), vbSaturday

Ce qui donne pour ton code :
Code:
Dim a As Integer
a = Int((dat - DateSerial(Year(dat), 1, 1) + ((Weekday(DateSerial(Year(dat), 1, 1), vbSaturday) + 1) Mod 7) - 3) / 7) + 1
If a = 0 Then
    a = SemISOs(DateSerial(Year(dat) - 1, 12, 31))
ElseIf a = 53 And (Weekday(DateSerial(Year(dat), 12, 31), vbSaturday) - 1) Mod 7 <= 3 Then
    a = 1
End If
SemISOs = a
Ce qui m'etonne c'est que dans le code ce n'etait pas preciser et que par defaut dans cette fonction, lorsque rien n'est précisé, il considère dimanche comme premier jour de la semaine.

Si tu veux que la semaine commence à lundi, là il faut l'indiquer.

A moins que cela change d'une version à l'autre d'Excel ?

A+

Creepy
 

JHA

XLDnaute Barbatruc
Re : Premier jour de la semaine dimanche

Bonjour Creepy le forum,

Moi j'utilise la foction mode pour trouver le lundi de la semaine mais tu peux adapter pour le dimanche ex:

=Date-MOD(Date+5;7)-1

le -1 est pour le dimanche

JHA
 

Alguiche

XLDnaute Junior
Re : Premier jour de la semaine dimanche

Salut Creepy,

Un grand merci pour cette réponse rapide et pertinente. J'ai Excel 2002 et je n'ai jamais eu à préciser le dernier jour pour obtenir qu'avec cette fonction ma semaine commence un lundi.

Bonne fin de semaine
Al
 

bruno33

XLDnaute Occasionnel
Re : Premier jour de la semaine dimanche

Bonjour à tous

Bonne idée cela marche. Moi d'habitude je fais recherchev du jour que je veux dans une table

6 vendredi aujourdhui
7 samedi aujourdhui+1
1 dimanche aujourdhui+2
..... etc

Merci
 

Discussions similaires