Bonsoir à tous,
J'ai avancé un peu plus mon diagramme de Gant et j'ai réussi à intégrer les jours fériés. J'ai pensé colorier les deux colonnes des jours fériés afin de pouvoir mettre une condition pour sauter ces jours là lors du remplissage du planning, mais voilà impossible de sélectionner les cellules à coloriées, pourtant les conditions ont bien l'air de fonctionner
Comme le classeur devient de plus en plus compliquer je le joint épurer du superflu et il va manquer des valeur sur le tableau mais comme le fichier original dépasse les 3 MO il faut bien supprimer pour arriver à 293 KO
Merci pour votre aide
cordialement
Didier
J'ai avancé un peu plus mon diagramme de Gant et j'ai réussi à intégrer les jours fériés. J'ai pensé colorier les deux colonnes des jours fériés afin de pouvoir mettre une condition pour sauter ces jours là lors du remplissage du planning, mais voilà impossible de sélectionner les cellules à coloriées, pourtant les conditions ont bien l'air de fonctionner
Code:
Range("DN1") = myDate
Dim colonne As Integer
Dim Colonne2 As Integer
Dim tmpDate As Date
Dim dtDate As Date
Dim Fin As Date
Fin = Me.DTPicker21.Value
While Fin < Range("DM5").Value
Range("F5").Select
ActiveCell.Offset(0, 1).Select
colonne = ActiveCell.Column
Colonne2 = (colonne + 1)
dtDate = ActiveCell.Value
Fin = (Fin + 1)
Ligne = 6
ActiveCell.Offset(1, 0).Select
Dim H As Integer, M As Integer, D As Integer
'Les valeurs de H, de M, et de D sont bien trouver par le programme
H = Year(dtDate): M = Month(dtDate): D = Day(dtDate)
If M = 1 And D = 1 Then
fJourFerie = "1er Janvier - Jour de l'An"
Apparament c'est la que ça coince mais c'est compliquer de savoir car pas facile de faire tourner la routine jusqu'à un jour férié
Range(ActiveCell, ActiveCell.End(xlDown)).Select
'là j'utilise du code généré automatiquement, ce doit être pas très beau
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 5 And D = 1 Then
fJourFerie = "1er Mai - Fête du Travail"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 5 And D = 8 Then
fJourFerie = "8 Mai - Victoire 1945"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 7 And D = 14 Then
fJourFerie = "14 Juillet - Fête nationale"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 8 And D = 15 Then
MsgBox "15 Août - Assomption"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 11 And D = 1 Then
fJourFerie = "1er Novembre - Toussaint"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 11 And D = 11 Then
fJourFerie = "11 Novembre - Armistice 1918"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf M = 12 And D = 25 Then
fJourFerie = "25 Décembre - Noël"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Else
tmpDate = fLundiPaques(H)
If dtDate = tmpDate Then
fJourFerie = "Lundi de Pâques"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf dtDate = tmpDate + 38 Then
fJourFerie = "Ascension"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ElseIf dtDate = tmpDate + 49 Then
fJourFerie = "Lundi de Pentecôte"
Range(ActiveCell, ActiveCell.End(xlDown)).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End If
Wend
Exit Sub
Merci pour votre aide
cordialement
Didier