Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Nombre de dimanche dans l'année

  • Initiateur de la discussion Initiateur de la discussion yassoux
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Y

yassoux

Guest
Bonjour,
je suis entrain de développer une petite application sur vba excel, qui demande beaucoup de manipulations avec les dates, dans le cas présent je ne dois effectuer un calcul sous de multiple conditions et contraintes de dates ....

1ère contrainte si l'année est une année normale à 52 dimanche
2ème contrainte si l'année est une année normale à 53 dimanche
3ème contrainte si l'année est une année bissextile à 52 dimanche
4ème contrainte si l'année est une année bissextile à 53 dimanche

oui c'est compliqué tous sa ^^ donc pour le moment je ne vous demande pas de me trouver une solution tout cuit à mon problème, car j'ai quand même essayer d'avance avant ^^

donc pour commencer voila ma macro pour connaitre si l'année est bissextile ou non :
Code:
If annee.Text / 4 = Int(annee.Text / 4) Then
MsgBox "bissextile"
Else
MsgBox " non bissextile"
End If
rien de plus simple...

par contre pour ce qui est du calcul du nombre de dimanche dans une année 😱
j'ai trouver une fonction excel qui y arrive :
Code:
=SI(JOURSEM(A9)=1;1;0)
cette formules va chercher la date en A1 et retourne 1 si c'est un dimanche, 0 si non...
j'aimerais bien trouver quelque chose de similaire en vba ^^

Je reste dispo pour tout autre question bien sur 😀
Merci d'avance
 
Re : Nombre de dimanche dans l'année

Suite...
Equivalents en VBA de :
  1. la première formule :
    Code:
    [COLOR="DarkSlateGray"][B]Function NbDim1%(d%)
       Application.Volatile
       NbDim1 = NbDim2(DateSerial(d, 1, 1))
    End Function[/B][/COLOR]
  2. la deuxième formule :
    Code:
    [COLOR="DarkSlateGray"][B]Function NbDim2%(d As Date)
       Application.Volatile
       NbDim2 = 52 - (Weekday(d, vbSunday) = 1) + (Weekday(d, vbSaturday) = 7) * _
          ((Year(d) Mod 4 = 0) - (Year(d) Mod 100 = 0) + (Year(d) Mod 400 = 0))
    End Function[/B][/COLOR]
ROGER2327
#3877


Mardi 24 Gidouille 137 (Saint Gris-gris, ventre, SQ)
20 Messidor An CCXVIII
2010-W27-4T12:26:26Z
 
Dernière édition:
Re : Nombre de dimanche dans l'année

Bonjour tototiti2008
C'est parfait ! Ça évite le calcul matriciel pour la détermination des années bissextiles.​
ROGER2327
#3878


Mardi 24 Gidouille 137 (Saint Gris-gris, ventre, SQ)
20 Messidor An CCXVIII
2010-W27-4T13:34:04Z
 
Re : Nombre de dimanche dans l'année

Bonjour à tous

Bravo à tous pour vos solutions qui ont été bien raccourcies au fil du temps (celles de Roger, j'en ai encore mal à la tête 😕).

J'ai fait un petit fichier en reprenant mon idée du départ et en me disant comment faire lorsqu'on a une formule pour la transformer en VBA et en fonction (voir le fichier joint).

Du coup, j'ai l'impression que c'est moi qui ai posé la question 🙂.

Comme dirait Dull: "TouslescheminsmènentàRome,pourvuqu'onenabusepastrop"

J'ai du faire un faute à Rome 😛.

Merci à tous 😉.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

D
  • Question Question
Réponses
5
Affichages
248
Didierpasdoué
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…