affiche date suivant N°de semaine en VBA

eduraiss

XLDnaute Accro
Bonsoir le forum

Je joins un fichier

En cellule C2 je rentre un numéro de semaine et en validant par enter je voudrais que les dates de cette semaine apparaissent en D4 E4 F4 G4

Merci de votre aide

Cordialement
 

Roland_M

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

bonsoir à tous et re eduress(encore Roland)



eduress
tu veux entrer la semaine auto dans la feuille 2
je vais t'arranger ça ! (dans ton classeur que j'ai gardé !)

Roland
 
Dernière modification par un modérateur:

kjin

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

Bonsoir eduraiss, bhbh,
Une adaptation de Celeda + Frederic Sigonneau + Iznogood, trouvée ici même
Merci à eux
A+
kjin

désolé, pas vu et bonsoir Roland
 

Pièces jointes

  • Essai_N°semaine.zip
    1.6 KB · Affichages: 85

Gil79

XLDnaute Nouveau
Re : affiche date suivant N°de semaine en VBA

Bonsoir
Voir fichier joint (excel 2003)
Petite lacune, je ne sais pas declencher la macro dès la touche (Entrée], j'ai donc positionné un bouton,
Bonne fin de Week-end
 

Pièces jointes

  • Num_Semaine.xls
    23 KB · Affichages: 114

JCGL

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

Bonjour à tous,

Peux-tu essayer en D4 :

Code:
=DATE(ANNEE(AUJOURDHUI());1;3)-JOURSEM(DATE(ANNEE(AUJOURDHUI());1;3))-5+7*C2
en E4 :

Code:
=D4+1
et tirer vers la droite

A+

Edition : Tu prends ton "rôle" à cœur BH*2 (cf. Message de David) Bravo
 
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Inactif
Re : affiche date suivant N°de semaine en VBA

Bonsoir,
Gil79, joli code....., la référence à la norme iso8601, je ne connaissais pas...:)

Pour l'insérer dans l'évènement de feuille, tu peux l'insérer ainsi dans le code de la feuille (Clic droit sur le nom de l'onglet, Visualiser le code)

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" Or Target.Address = "$B$2" Then
    Dim jan04 As Date
    Dim PremierLundi As Date
    Dim LundiSemaine As Date
    With ActiveSheet
    numsem = .Cells(2, 1)
    année = .Cells(2, 2)
    'Calcul du lundi de la 1ere semaine de l'année a partir du
    '4 janvier qui  est toujours dans la semaine 01 (iso8601)
    jan04 = "04/01/" & année
    PremierLundi = jan04 - (Weekday(jan04, vbMonday) - 1)
    'Lundi de la semaine demandée
    LundiSemaine = PremierLundi + ((numsem - 1) * 7)
    For i = 0 To 6
        .Cells(2, 3 + i) = LundiSemaine + i
    Next i
    End With
End If
End Sub

PS : un peu raccourci ton code avec la boucle For i = 0 To 6....
 

JCGL

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

Re,

Souvenez -vous qu'une formule est souvent plus rapide qu'un code (cf. mon ami Ti :) , adage que je partage pleinement)

Bien évidement quand c'est possible :p

A+
 

kjin

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

En cellule C2 je rentre un numéro de semaine et en validant par enter je voudrais que les dates de cette semaine apparaissent en D4 E4 F4 G4

Bonsoir à tous,
Pour compléter la remarque de JCGL, eduraiss n'a pas préciser de quels jours il s'agissait, et des semaines de 4 jours j'en connais pas.

Mais pour ma part, je garde tout.;)
A+
kjin
 

eduraiss

XLDnaute Accro
Re : affiche date suivant N°de semaine en VBA

Bonsoir a tous

Merci pour votre aide, je vais trouver mon bonheur j'en suis sûr

Pour répondre a la question pourquoi le vba, je pense qu'il est plus fiable, pas possible de faire disparaitre la formule, et je crois aussi que les fichier sont plus léger.

Si je travaille sur un fichier personnel les formules me vont très bien, mais quand celui-ci est utiliser par d'autre personne alors là danger

Mais c'est mon idée

Cordialement a vous
 

Roland_M

XLDnaute Barbatruc
Re : affiche date suivant N°de semaine en VBA

bonsoir à tous
explication pourquoi du code plutôt que formule !?
il lui faut du code pour la simple raison que cette feuille est effacée presque totalement
avant recopy des colonnes entières de sa première feuille(sous condition) dans cette feuille(2)
et là, toutes les formules seraient effecées.
(je suis dessus en ce moment même)
en tous les cas merci je prend bonne note de ces idées dont certaines je ne connaissais pas.
Roland
 

Membres actuellement en ligne

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed