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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
| Private Sub Worksheet_Change(ByVal Target As Range)
'DESACTIVATION DE LA MAJ D'ECRAN A CHAQUE CALCUL => ok
Application.ScreenUpdating = False
'DATE D'ACQUISITION => ok
If Target.Column = 10 Then If Not (IsEmpty(Target.Value)) Then Range("L" & Target.Row).Value = Date _
Else: Range("L" & Target.Row).ClearContents
'DATE FAIT LE... => ok
If Target.Column = 15 Then If Not (IsEmpty(Target.Value)) Then Range("P" & Target.Row).Value = Date _
Else: Range("P" & Target.Row).ClearContents
'CHANGEMENT DE COULEUR EN FONCTION DE LA BASE => ok
Set Plage = Range("J:J") 'Case base
Set Plg = Range("B" & Target.Row & ":P" & Target.Row) 'Selection du tableau
Set Plgtt = Range("B" & Target.Row & ":BE" & Target.Row) 'Selection de la totalité de la ligne utiliser, stat compris
If Not Application.Intersect(Target, Plage) Is Nothing And Target.Count = 1 Then
Select Case Target
Case Is = "AN": Plg.Interior.Color = RGB(72, 198, 5) 'vert
Case Is = "HE": Plg.Interior.Color = RGB(225, 206, 154) 'Vanille
Case Is = "CH": Plg.Interior.Color = RGB(212, 115, 212) 'mauve
Case Is = "VE": Plg.Interior.Color = RGB(84, 249, 141) 'menthe à l'eau
Case Is = "FO": Plg.Interior.Color = RGB(255, 0, 0) 'rouge
Case Is = "NA": Plg.Interior.Color = RGB(44, 117, 255) 'bleu électrique
Case Is = "FG": Plg.Interior.Color = RGB(255, 255, 0) 'jaune
Case Is = "MZ": Plg.Interior.Color = RGB(231, 62, 1) 'abricot
Case Is = "ML": Plg.Interior.Color = RGB(24, 194, 230) 'bleu ciel
Case Is = "CO": Plg.Interior.Color = RGB(240, 130, 200) 'rose foncé
Case Is = "DA": Plg.Interior.Color = RGB(255, 165, 90) 'orange pale
Case Else
Plg.Interior.Pattern = xlNone 'suppr de la couleur si plus de base
Plgtt.ClearContents 'suppr du contenue de la ligne si plus de base
End Select
End If
'CHANGEMENT DE COULEUR SI INTERVENTION FAITE (COLONNE "O") + RETOUR A LA 1ère COULEUR SI SUPPR DE "X" => ok
Set Plage = Range("O:O")
If Not Application.Intersect(Target, Plage) Is Nothing And Target.Count = 1 Then
Select Case Target
Case Is = "X": Plg.Interior.Color = RGB(170, 5, 80) 'magenta foncé
Case Is = "x": Plg.Interior.Color = RGB(170, 5, 80) 'magenta foncé
End Select
If Target.Value = "" Then
Select Case Cells(Target.Row, 10).Value
Case Is = "AN": Plg.Interior.Color = RGB(72, 198, 5) 'vert
Case Is = "HE": Plg.Interior.Color = RGB(225, 206, 154) 'Vanille
Case Is = "CH": Plg.Interior.Color = RGB(212, 115, 212) 'mauve
Case Is = "VE": Plg.Interior.Color = RGB(84, 249, 141) 'menthe à l'eau
Case Is = "FO": Plg.Interior.Color = RGB(255, 0, 0) 'rouge
Case Is = "NA": Plg.Interior.Color = RGB(44, 117, 255) 'bleu électrique
Case Is = "FG": Plg.Interior.Color = RGB(255, 255, 0) 'jaune
Case Is = "MZ": Plg.Interior.Color = RGB(231, 62, 1) 'abricot
Case Is = "ML": Plg.Interior.Color = RGB(24, 194, 230) 'bleu ciel
Case Is = "CO": Plg.Interior.Color = RGB(240, 130, 200) 'rose foncé
Case Is = "DA": Plg.Interior.Color = RGB(255, 165, 90) 'orange pale
End Select
End If
End If
'AJOUT DE VALEURS HORS TABLEAU POUR STAT (COLONNE: R à AB) => ok
Set Plgbase = Range("J:J")
If Not Application.Intersect(Target, Plgbase) Is Nothing And Target.Count = 1 Then
Select Case Target
Case Is = "AN": Range("R" & Target.Row).Value = 1
Case Is = "HE": Range("S" & Target.Row).Value = 1
Case Is = "CH": Range("T" & Target.Row).Value = 1
Case Is = "VE": Range("U" & Target.Row).Value = 1
Case Is = "FO": Range("V" & Target.Row).Value = 1
Case Is = "NA": Range("W" & Target.Row).Value = 1
Case Is = "FG": Range("x" & Target.Row).Value = 1
Case Is = "MZ": Range("Y" & Target.Row).Value = 1
Case Is = "ML": Range("z" & Target.Row).Value = 1
Case Is = "CO": Range("AA" & Target.Row).Value = 1
Case Is = "DA": Range("AB" & Target.Row).Value = 1
End Select
End If
'AJOUT DE VALEUR "1" SI FAIT & SUPPR DE LA VALEUR "1" SI PLUS DE BASE (COLONNE: AB) & STAT DELAIS => ok
Set Plgfait = Range("O:O") 'colonne fait
Set Plgstatfait = Range("AC" & Target.Row) 'colonne si intervention faite = 1
Set Plgstatdelais = Range("BE" & Target.Row) 'colonne pour delais1 = 1
Set Plgdate1 = Range("L" & Target.Row) 'colonne date de début
Set Plgdate2 = Range("P" & Target.Row) 'colonne date de fin
If Not Application.Intersect(Target, Plgfait) Is Nothing And Target.Count = 1 Then
Select Case Target
Case Is = "X": Plgstatfait.Value = 1 'Si "X" dans fait (MAJ)
Case Is = "x": Plgstatfait.Value = 1 'Si "x" dans fait (minuscule)
Case Else: Plgstatfait.ClearContents
End Select
If Not Application.Intersect(Target, Plgfait) Is Nothing And Target.Count = 1 Then
Select Case Target
Case Is = "X": Plgstatdelais.Value = DateDiff("d", Plgdate1, Plgdate2) ' Ajout du délais
Case Is = "x": Plgstatdelais.Value = DateDiff("d", Plgdate1, Plgdate2) ' Ajout du délais
Case Else: Plgstatdelais.ClearContents
End Select
End If
End If
'AJOUT DE VALEUR "1" DANS LE MOIS SI AJOUT DE BASE (COLONNE: AE à AP)
Set Plgstatdate1 = Range("L" & Target.Row) 'colonne date de début
Set janvier = Range("AE" & Target.Row)
Set fevrier = Range("AF" & Target.Row)
Set mars = Range("AG" & Target.Row)
Set avril = Range("AH" & Target.Row)
Set mai = Range("AI" & Target.Row)
Set juin = Range("AJ" & Target.Row)
Set juillet = Range("AK" & Target.Row)
Set aout = Range("AL" & Target.Row)
Set septembre = Range("AM" & Target.Row)
Set octobre = Range("AN" & Target.Row)
Set novembre = Range("AO" & Target.Row)
Set decembre = Range("AP" & Target.Row)
If DateValue (Plgstatdate1) >= DateValue("01/01/2016") And DateValue (Plgstatdate1) <= DateValue("01/31/2016") Then
janvier.Value = 1
'MsgBox "test ok"
End If
'AJOUT DE VALEUR "1" DANS LE MOIS SI INTERVENTION FAITE (COLONNE: AR à BC)
'Idem que précédent mais en colonne "AR" à "BC" en fonction de la date en colonne "P"
'COULEUR DES VALEURS HORS TABLEAU (COLONNE: >=Q) => ok
With Range("Q:BE").Font
'.Color = RGB(255, 255, 255) 'blanc
.Color = RGB(32, 32, 32) 'noir
End With
End Sub |
Partager