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 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193
| Private Sub CommandButton1_Click()
'(bouton "valider")
Application.ScreenUpdating = False
Sheets("Historique général").Select
ActiveSheet.Unprotect
If Me.TextBox2 = "" Then
MsgBox ("veuillez rentrez l'heure d'appel!!!")
End If
If Me.TextBox3 = "" Then
MsgBox ("veuillez rentrez l'heure d'arrivée!!!")
End If
If Me.TextBox4 = "" Then
MsgBox ("veuillez rentrez l'heure de fin!!!")
End If
If Me.TextBox5 = "" Then
MsgBox ("veuillez rentrez le numéro de BTFI!!!")
End If
If Me.TextBox6 = "" Then
MsgBox ("veuillez rentrez la nature du dépannage!!!")
End If
If Me.ComboBox2 = "" Then
MsgBox ("veuillez rentrez le lieu!!!")
End If
If Me.ComboBox5 = "" Then
MsgBox ("veuillez rentrez le technicien!!!")
'End If
Exit Sub
Else
Sheets("Historique général").Select
Dim liste_derniere_ligne(6) As Long, i As Byte
Dim derniere_ligne As Long
Dim derniere_cellule As Range
For i = 1 To 6
liste_derniere_ligne(i) = Sheets("Historique général").Cells(65536, i).End(xlUp).Row
Next
Set derniere_cellule = Sheets("Historique général").Cells(WorksheetFunction.Max(liste_derniere_ligne), 1)
'Colonne A : date d'appel recu:
derniere_cellule.Offset(1, 0) = (Me.TextBox1)
derniere_cellule.Offset(1, 0) = CDate(CSng(Date))
'Colonne B : Heure d'appel:
derniere_cellule.Offset(1, 1) = (Me.TextBox2)
'Colonne C : Fusion date heure
derniere_cellule.Offset(1, 2).NumberFormat = "dd/mm/yyyy hh:mm"
derniere_cellule.Offset(1, 2) = "=RC[-2]+RC[-1]"
'Colonne D : Type de maintenance:
derniere_cellule.Offset(1, 3) = "CORRECTIVE"
'Colone E : Type de lots:
derniere_cellule.Offset(1, 4) = (Me.ComboBox1)
'Colonne F : Présence Site:
If (Me.CheckBox1) Then derniere_cellule.Offset(1, 5) = "X" Else derniere_cellule.Offset(1, 5) = ""
'Colonne G : IMMEDIAT:
derniere_cellule.Offset(1, 6).Activate
ActiveCell.FormulaR1C1 = _
"=IF(RC[-1]=""X"",IF(OR(RC[-2]=""HT"",RC[-2]=""BT"",RC[-2]=""ONDULEURS""),""IMM"",""""),"""")"
'Colonne H : 30 MINUTES:
derniere_cellule.Offset(1, 7).Activate
ActiveCell.FormulaR1C1 = _
"=IF(RC[-2]=""X"",IF(OR(RC[-3]=""ALARMES"",RC[-3]=""PORTES AUTO""),""30M"",""""),"""")"
'Colonne I : 2H:
derniere_cellule.Offset(1, 8).Activate
ActiveCell.FormulaR1C1 = _
"=IF(RC[-3]=""X"","""",IF(OR(RC[-4]=""HT"",RC[-4]=""BT"",RC[-4]=""ONDULEURS"",RC[-4]=""ALARMES"",RC[-4]=""PORTES AUTO""),""2H"",""""))"
'Colonne J : Lieu d'intervention:
derniere_cellule.Offset(1, 9) = (Me.ComboBox2)
'Colonne K : Technicien intervenu:
derniere_cellule.Offset(1, 10) = (Me.ComboBox5)
'Colonne L : Date d'arrivée:
derniere_cellule.Offset(1, 11) = (Me.TextBox8.Value)
derniere_cellule.Offset(1, 11) = CDate(TextBox8)
'Colonne M : Heure d'arrivée:
derniere_cellule.Offset(1, 12) = (Me.TextBox3)
'Colonne N : Fusion date heure
derniere_cellule.Offset(1, 13).NumberFormat = "dd/mm/yyyy hh:mm"
derniere_cellule.Offset(1, 13) = "=RC[-2]+RC[-1]"
'Colonne O : Date de Fin:
derniere_cellule.Offset(1, 14) = (Me.TextBox9)
derniere_cellule.Offset(1, 14) = CDate(TextBox9)
'Colonne P : Heure de Fin:
derniere_cellule.Offset(1, 15) = (Me.TextBox4)
'Colonne Q : Fusion date heure
derniere_cellule.Offset(1, 16).NumberFormat = "dd/mm/yyyy hh:mm"
derniere_cellule.Offset(1, 16) = "=RC[-2]+RC[-1]"
'Colonne R : Nature du Dépannage:
derniere_cellule.Offset(1, 17) = (Me.TextBox6)
'Colonne S : N° de BTFI:
derniere_cellule.Offset(1, 18) = (Me.TextBox5)
'Colonne T : Observation:
derniere_cellule.Offset(1, 19) = (Me.TextBox7)
'Colonne U : colonne Temps d'interv.
derniere_cellule.Offset(1, 20).NumberFormat = "[hh]:mm"
derniere_cellule.Offset(1, 20).Activate
ActiveCell.FormulaR1C1 = "=RC[-7]-RC[-18]"
'Colonne V : Temps d'indisponibilité:
derniere_cellule.Offset(1, 21).NumberFormat = "[hh]:mm"
derniere_cellule.Offset(1, 21).Activate
ActiveCell.FormulaR1C1 = "=RC[-5]-RC[-19]"
'Colonne W : Respect Delai D'interv.:
derniere_cellule.Offset(1, 22).Activate
ActiveCell.FormulaR1C1 = _
"=IF(RC[-16]=""IMM"",IF(RC[-2]<R1C23,""X"",""""),IF(RC[-15]=""30M"",IF(RC[-2]<R2C23,""X"",""""),IF(RC[-14]=""2H"",IF(RC[-2]<R3C23,""X"",""""),"""")))"
'Colonne X : Respect Delai Dép. < 4h:
derniere_cellule.Offset(1, 23).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-2]<R3C24,""X"","""")"
'Colonne Y : NON Respect obligation de resultat
derniere_cellule.Offset(1, 24).Activate
ActiveCell.FormulaR1C1 = _
"=IF(OR(RC[-18]=""IMM"",RC[-17]=""30M"",RC[-16]=""2H""),IF(RC[-2]=""X"",IF(RC[-1]=""X"","""",""X""),""X""),"""")"
'Colonne AA : Colonne Tps d'indispo. HT
derniere_cellule.Offset(1, 26).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-22]=""HT"",RC[-5],"""")"
'Colonne AB : Colonne Tps d'indispo. BT
derniere_cellule.Offset(1, 27).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-23]=""BT"",RC[-6],"""")"
'Colonne AC : Colonne Tps d'indispo. ONDULEURS
derniere_cellule.Offset(1, 28).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-24]=""ONDULEURS"",RC[-7],"""")"
'Colonne AD : Colonne Tps d'indispo. ALARMES
derniere_cellule.Offset(1, 29).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-25]=""ALARMES"",RC[-8],"""")"
'Colonne AE : Colonne Tps d'indispo. PORTES AUTO
derniere_cellule.Offset(1, 30).Activate
ActiveCell.FormulaR1C1 = "=IF(RC[-26]=""PORTES AUTO"",RC[-9],"""")"
Application.ScreenUpdating = True
derniere_cellule.Offset(2, 0).Activate
End If
Unload VALEO
Sheets("Historique Général").Select
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFiltering:=True
End Sub |