Excel VBA - durée à cheval sur 2 années
Bonjour,
Je dois réaliser un planning avec des dates début et fin de stage. Pour colorier le planning j'utilise les numéros de semaine de chacun des dates (col H pour la sem 1 jusqu'à col BG pour la sem 52).
Voici un bout du code qui fonctionne parfaitement écrit par Mercatog, mille mercis.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| 'j compteur de ligne débute en 4 dans la feuille planning
For j = 4 To LastLig
'date de début en colonne D
v_date_stage = CDate(.Range("D" & j).Value)
'date fin en colonne F
v_date_fin_stage = CDate(.Range("F" & j).Value)
'N° semaine de de début
v_sem_deb = DatePart("ww", v_date_stage, vbMonday, vbFirstFourDays)
'N° semaine fin
v_sem_fin = DatePart("ww", v_date_fin_stage, vbMonday, vbFirstFourDays)
'on écrit en E le n° semaine de début
.Range("E" & j).Value = v_sem_deb
'on écrit en G le n° semaine de fin
.Range("G" & j).Value = v_sem_fin
'On boucle et en remplit (semaine 1 en colonne 8:H
'If v_sem_deb > v_sem_fin Then
For i = v_sem_fin To v_sem_deb 'j'ai essayé ce test mais bof !
.Cells(j, 7 + i).Value = Left(.Range("C" & j).Value, 1)
'Si le service est colorié en colonne C,
'cette couleur sera reportée dans le planning
.Cells(j, 7 + i).Interior.Color = .Range("C" & j).Interior.Color
Next i
Else
For i = v_sem_deb To v_sem_fin
.Cells(j, 7 + i).Value = Left(.Range("C" & j).Value, 1)
'Si le service est colorié en colonne C,
'cette couleur sera reportée dans le planning
.Cells(j, 7 + i).Interior.Color = .Range("C" & j).Interior.Color
Next i
'End If
Next j |
Le souci est lorsque le stage commence par exemple en novembre et se termine en janvier, dans ce cas le numéro de la semaine fin est supérieur à celle de début.
Merci encore pour votre aide.
Chris
mise en forme conditionnelle
il n'y aurait pas plus simple avec une mise en forme conditionnelle?
Gestion de stagiaires par service avec planning sur2 ans
Vous êtes des chefs ça marche nickel, j'ai conservé la version de mercatog.
Encore merci beaucoup
Voila une application de gestion de stagiaires par service avec planning qui devrait être sympa grâce à vous.
À bientôt pour de nouvelles aventures
Bien cordialement
Chris
ps : si vous voulez le fichier terminé n'hésitez pas !
Il me reste à peaufiner mes formulaires et j'espère que cela sera une formalité:roll: