Comment trouver le résultat d'une textbox en % en fonction des heures ?
Salut à tous !
J'ai un problème sur mon userform avec le formatage des textbox. en fait je monte un petit applicatif pour la gestion des présences d'une petite banque
la TextBox8 et 9 sont reservé à l'heure arrivée et depart, la TextBox10 au nombre d'heure effectué qui se calcul automatiquement sans problème; la TextBox18 est reservée à l'heure légale. Maintenant en utilisant la méthode TextBox9_AfterUdate, je voudrais que les autres TextBox se calculent automatiquement. respectivement la TextBox13 pour le nombre d'heure d'absence et la TextBox12 pour le taux d'absentéisme.
J'utilise ce code
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
|
Private Sub TextBox9_AfterUpdate()
' envoi de la valeur dans la feuille de calcul
Feuil6.Range("C2").Value = Format(Me.TextBox8.Value, "hh:mm")
Feuil6.Range("B2").Value = Format(Me.TextBox9.Value, "hh:mm")
'****************************************************************************************
Me.TextBox10.Value = Feuil6.Range("D2").Value
' format du champ Résultat dans la textbox
Me.TextBox10.Value = Format(Me.TextBox10.Value, "hh:mm")
End Sub
Private Sub TextBox18_AfterUpdate()
If TextBox18.Value = "" Then TextBox18.Value = 0 Else TextBox18.Value = TextBox18.Value
total
End Sub
Private Sub TextBox10_AfterUpdate()
If TextBox10.Value = "" Then TextBox10.Value = 0 Else TextBox10.Value = TextBox10.Value
total
End Sub
Private Sub total()
Const porctge As Single = 100
TextBox13.Text = Format(CDate(TextBox10.Value) - CDate(TextBox18.Value), "hh:mm")
TextBox15.Text = Format(CDate(TextBox10.Value) - CDate(TextBox18.Value), "hh:mm")
TextBox12.Text = (Val(TextBox13.Text) / Val(TextBox18.Value)) * porctge, "0.00%") 'Probleme de format
If Len(TextBox10.Value > TextBox8.Value) Then
TextBox13.ForeColor = RGB(23, 138, 4) 'ici
End If
End Sub |
]
J'obtien bien tous les résultats sauf que le nombre d'heure d'absence ne peut passer en négatif ou changé de couleur par exemple le résultat est le meme quoi que l'employé ait travaillé plus que l'heure légale et le taux d'absenteisme refuse de prendre le fomat et si je suipprime le format, le résultat est faux.
Tous ça est compliqué mais quelqu'un pourrait-il me proposer une astuce
Cordialement
TSAFACK-M