Rechercher le lundi de la semaine N°

Résolu
viret1290 Messages postés 146 Statut Membre -  
viret1290 Messages postés 146 Statut Membre -
Bonjour,

J'aimerai pouvoir taper le N° de semaine dans A1 et que dans B1 il me marque la date du lundi et en C1 il mette la date du lundi et du vendredi.

Merci de votre aide

A voir également:

7 réponses

f894009 Messages postés 17413 Statut Membre 1 715
 
0
viret1290 Messages postés 146 Statut Membre 2
 
Merci, mais j'aimerai le faire par macro.
Avez-vous la solution
0
f894009 Messages postés 17413 Statut Membre 1 715
 
Bonjour,

Pour une fois que quelqu'un ne veut pas de formule !!!!!!

en C1 il mette la date du lundi et du vendredi. Z'etes sûre ?????

L'annee, c'est l'annee en cours ou un choix via une saisie ????
0
f894009 Messages postés 17413 Statut Membre 1 715
 
Re,

Calcul pour annee en cours:

Sub Bouton1_Cliquer()
    Dim DDate As Date
    
    With Worksheets("feuil1")
        'ici annee en cours
        DDate = "03/01/" & Year(Date)
        NDay = Weekday(DDate, vbMonday)     'Numero jour semaine de la date (Lundi: premier jour de la semaine)
        Num_sem = .Range("A1")                        'numero de semaine
        'calcul date lundi de la semaine
        lundi = DDate - NDay - 5 + (7 * Num_sem) - 1
        'affichage
        .Range("B1") = lundi
        .Range("C1") = lundi + 6
        
    End With
End Sub
0
viret1290 Messages postés 146 Statut Membre 2
 
Bonjour,

Magnifique, mais j'aimerai pouvoir choisir l'année et que le premier lundi de l'année se mette automatiquement.(DDate=" / "&Year(Date)

Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 18903 Statut Contributeur 3 317
 
bonjour
excusez l'inscrute
avec l'année en A2
Range("B1") = [7*A1+DATE(A2,1,1)-WEEKDAY(DATE(A2,1,3))-3]

à mettre au format désiré
0
f894009 Messages postés 17413 Statut Membre 1 715
 
Bonjour Michel,
J'avais demande au monsieur qu'est-ce qu'il voulait comme date, mais réponse le jour d'apres
0
pijaku Messages postés 13513 Statut Modérateur 2 763
 
Bonjour,

Bonjour tout le monde,

Allons-y de ma petite fonction...

Pour renvoyer, le lundi d'une semaine donnée, d'une année donnée, voici une adaptation de deux fonctions de C Pearson :

    Public Function Lundi(Num_Semaine As Integer, Annee As Integer) As Date
    Dim Jour As Integer, Debut_Annee As Date
    
        Jour = (DateSerial(Annee, 1, 1) - 2) Mod 7
        If Jour < 4 Then
            Debut_Annee = DateSerial(Annee, 1, 1) - Jour
        Else
            Debut_Annee = DateSerial(Annee, 1, 1) - Jour + 7
        End If
        Lundi = Debut_Annee + ((Num_Semaine - 1) * 7)
    End Function 


La procédure d'appel, par exemple :
    Sub Test()
    Dim monLundi As Date
        'retourne la date du lundi de la semaine 14 de 2015
        monLundi = Lundi(14, 2015)
        MsgBox monLundi
    End Sub

Avant, j'arrivais jamais à finir mes phrases... mais maintenant je
0
viret1290 Messages postés 146 Statut Membre 2
 
Bonjour,
Excusez-moi de ma réponse tardive, mais je vous remercie infiniment.
0