Formule N° de semaine

  • Initiateur de la discussion Steve
  • Date de début
S

Steve

Guest
Bonjour le forum

je ne trouve pas dans insertion formule Numero de semaine. ou est ce quee je pouurrais la telecharger merci.
 

Apprenti.xls

XLDnaute Nouveau
Bonjour Steve,

Voici une macro qui n'est pas de moi qui pourrait te rendre service :


Code:
Function SemISO(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 = SemISO(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
    SemISO = a
End Function

Il est précisé que
la fonction NO.semaine fournie avec les macros complémentaires ne correspond pas aux règles ISO :
La première semaine est la première semaine qui comprend au moins quatre jours de la nouvelle année.
(voir 1er janv 1998).


Voili, voilà ... en espérant que celà te convienne.


Message édité par: Apprenti.xls, à: 08/08/2005 15:25

Message édité par: Apprenti.xls, à: 08/08/2005 15:26
 

jeanpierre

Nous a quitté
Repose en paix
Re Steve, bonjour Apprenti.xls

Pour avoir accés à cette fonction fx, il convient que l'utilitaire d'analyse soit actif.

Dans Outils - Macros complémentaires, tu recherches Utilitaire d'analyses et tu coches.


Jean-Pierre
 

Monique

Nous a quitté
Repose en paix
Bonjour,

Pour que les n° de semaine suivent la norme européenne

=NO.SEMAINE(A1;2)-(JOURSEM(DATE(ANNEE(A1);1;1);2)>4)
(calendrier 1900)

Plus court mais calendrier 1900 seulement :
=ENT(MOD(ENT((A1-2)/7)+0,6;52+5/28))+1

Compatible calendrier 1900 ou option 1904 cochée (outils - options - calcul)
=ENT(MOD(ENT((A1-2+(JOURSEM(1)=7)*6)/7)+0,6+((JOURSEM(1)=7)*208);52+5/28))+1
 

Discussions similaires