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

F

fabrice

Guest
j'aimerai connaitre, si il existe une fonction qui donne les date en fonctions du numero de la semaine, je m'explique

si je note semaine 15, excel me donne dans une autre cellule "du 5/04/04 au 11/04/04 "
 
bonjour Fabrice


tu peux tester la macro ci dessous ( le dimanche en premier jour de la semaine ) ...il existe certainement une solution plus simple

Sub dateSelonNumSemaine()
Dim i As Integer, valAnnee As Integer
Dim J As Byte, valSemaine As Byte, X As Byte
Dim Sem As Date, Dte As Date
Dim Tableau(7)
valSemaine = InputBox("Saisir le numéro de semaine . ", "Semaine", 1)
valAnnee = InputBox("Saisir l'année . ", "annee", 2004)
For i = 1 To 367
Dte = "01/01/" & valAnnee
Dte = Dte + i - 1
Sem = Format(Dte, "WW", , vbFirstJan1)
If Format(Sem, "00") = Format(valSemaine, "00") Then
Tableau(J) = Format(Dte, "d mmmm yyyy")
J = J + 1
End If
Next i
'gestion semaine01
If Format(valSemaine, "00") = 1 Then
For X = 1 To J
If CDate(Tableau(X - 1)) + 1 <> CDate(Tableau(X)) Then
J = X
Exit For
End If
Next X
End If
MsgBox "Année : " & valAnnee & " Semaine : " & valSemaine & Chr(10) _
& Chr(10) _
& "Début : " & Tableau(0) & Chr(10) _
& "Fin : " & Tableau(J - 1)
End Sub



bon apres midi
michel
lapin4.gif
 
Bonjour,

Par formule, à tester :
="Du "&TEXTE(DATE(ANNEE(AUJOURDHUI());1;1)+(A1-1)*7-MOD(DATE(ANNEE(AUJOURDHUI());1;1)-2;7);"jj/mm/aa")&" au "&TEXTE(DATE(ANNEE(AUJOURDHUI());1;1)+(A1-1)*7-MOD(DATE(ANNEE(AUJOURDHUI());1;1)-2;7)+6;"jj/mm/aa")
 
je vous remercie beaucoup tous les 2, mais monique j'ai encore un pb avec ta formule, je m'explique , je suis entrain de faire un tableau recaptulatif des heures effectuées dans un exercice, mais avec ta formule, semaine 52 c'est bien de l'année en cours , mais semaine 1 passe de 2004 a 2003
 
Re,

Cette formule te donne le lundi de la semaine n° x
Si la semaine démarre le lundi et que le 1er janvier n'est pas un lundi,
la semaine du 1er janvier démarre le dernier lundi de l'année précédente.
En 2004 (et 6 fois sur 7), la semaine 1 "démarre" en 2003

Ou si tu veux que la semaine 1 démarre le 1er janvier, il faudrait ajouter une condition dans la formule
du genre =SI(A1=1;DATE(ANNEE(AUJOURDHUI());1;1);sinon la formule)
(là, je n'ai plus le temps)

En plus, la fonction No.Semaine n'est pas fiable.
Si le premier jeudi de l'année tombe après le 4 janvier, la fonction No.Semaine donnera un résultat faux pour les Européens.
En Europe, la semaine n° 1 "doit" comporter au moins 4 jours.
La semaine du premier janvier a donc le n° 1 si le premier est soit un lundi, soit un mardi, soit un mercredi soit un jeudi.
Si le premier janvier tombe un vendredi ou un samedi ou un dimanche,
la semaine n° 1 débutera le lundi 4 ou le lundi 5 ou le mardi 6.

Il existe des formules pour améliorer la fonction No.Semaine
Tu as quelque chose là-dessus dans le classeur "Dates et heures"
<http://www.excel-downloads.com/html/French/fichiers/programmation-date_maj-1.htm>
 
- 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

  • Question Question
Microsoft 365 format date
Réponses
3
Affichages
139
Réponses
0
Affichages
230
Réponses
5
Affichages
295
Réponses
10
Affichages
301
Retour