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

compter les semaines

  • Initiateur de la discussion Initiateur de la discussion sri75
  • 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 !

sri75

XLDnaute Occasionnel
Bonour, je cherche une fonction en vba qui me permettrait se savoir dans quelle semaine je me trouve ( ex semaine du 1er janvier = 1 semaine du 31 décembre = 52 ).

J'ai trouvé pour compter les jours mais je sèche avec les semaines.

merci d'avance pour votre aide

stephane
 
Re : compter les semaines

Bonjour SRI75 et tout le monde,

Voici un exemple :

Code:
Sub semaine()
MaDate = Date
Numero = Format(MaDate, "ww", vbMonday) - 1
SEM = InputBox("Nous sommes actuellement en Semaine " & Numero, "Microsoft Excel", , vbOKOnly)
End Sub

Bye
 
Re : compter les semaines

Simons à dit:
Code:
Sub semaine()
MaDate = Date
Numero = Format(MaDate, "ww", vbMonday) - 1
SEM = InputBox("Nous sommes actuellement en Semaine " & Numero, "Microsoft Excel", , vbOKOnly)
End Sub
j'avais oublié les variables..😛
Code:
Dim SEM As String
Dim MaDate As Date
Dim Numero As Byte
 
Re : compter les semaines

Bonjour, Stephane, Simons

une autre méthode, la fonction "DatePart" :

Code:
Sub test()
Dim MaSemaine As Byte
MaSemaine = DatePart("ww", "30/11/2006", 2, vbFirstFullWeek)
End Sub

bonne fin d'après midi
@+
 
Re : compter les semaines

Bonjour le FIL

Pour info
La numérotation des semaines est relativement complexe, une année comporte 52 ou 53 semaines.
La semaine 1 va dépendre du jour du 1er janvier.

extrait du quid:
" La première semaine de l'année est celle où se trouve le 1er jeudi de janvier..."

Ce qui entraîne des corrections à apporter a la valeur trouvé

JP
 
Re : compter les semaines

Re Stephane, Simons, bonsoir Jp14

la fonction "DatePart" comporte l'argument "firtweekofyear" auquel est associé 3 constantes, ci dessous les définitions et les valeurs selon l'aide VBA :


bonne soirée
@+
 
Merci à tous

Merci à tous pour votre aide rapide.

Pour ma culture vba, pourriez vous m'expliquer le role des fonctions suivantes

Numero = Format(MaDate, "ww", vbMonday) - 1

je ne vois pas à quoi sert le "ww" et le -1

J'avais également crée le code suivant pour les jours, et je voudrais savoir si je peux m'affranchir de la date en dur :

ce code me dit que nous sommes le 334 ème jour de l'année.

datedujour = Date
date2 = "01 /01 / 2006"
jour = datedujour - date2

mrci pour vos conseils.
 
Re : compter les semaines

Bonjour Stephane, Abc, Jp, Simons

Pour déterminer le numéro du jour de l'année tu peux toujours utiliser la fonction DatePart, code ci dessous :

Code:
Nbjours = DatePart("y", Date)

Pour plus d'info sur la fonction, tu fais touche de fonction F1 sur le mot pour le quel tu veux de l'aide.

bonne journée
@+

PS nous sommes bien aujourd'hui le 335ème jour de l'année, cf mon éphéméride.
 
Dernière édition:
Re : compter les semaines // final

Effectivement mon code était faux !

j'ai donc adapté le dernier code pour la semaine ce qui me donne :

Nbjours = DatePart("y", Date)

Nbsem = DatePart("ww", Date)

result = "Le numéro du jour est le " & Nbjours & " de la semaine" & " " & Nbsem

MsgBox (result)

merci encore à tous pour votre aide précieuse.
 
- 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

Discussions similaires

Réponses
4
Affichages
309
Réponses
5
Affichages
306
Réponses
3
Affichages
215
Réponses
2
Affichages
407
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…