probleme de calcul via un userform

toff35150

XLDnaute Nouveau
Bonjour, je post apres de multiple recherche, j'ai mis en place un tableau de calcule horaire pour les salariés de mon entreprise, dans le quelle on retrouve le jour, nom, prenom, heure de debut et heure fin (ça c'est pour la partie saisi).
A partir de là (du jour, du debut et de la fin) on retrouve automatiquement le nombre d'heures travaillé, le nombre d'heures de jour et de nuit ainsi que le nombre d'heures de dimanche. Bon jusque là pas de soucis!
j'ai mis un formulaire en place pour rendre la saisie plus agreable et c'est là que je seche le formulaire remplit bien toutes mes cellules, mais au moment du calcule des divers intervalles horaires j'ai constaté que les calcules etaient faux, alors que si je saisie manuellement les calcules sont bons!!!!!!
je joint mon fichier en piece jointe

si quelqu un avait une reponse ...
 

Pièces jointes

  • heures agent 2012 test.xlsm
    138.1 KB · Affichages: 53

Dranreb

XLDnaute Barbatruc
Re : probleme de calcul via un userform

Bonsoir.
Essayez comme ça:
VB:
Private Sub CommandButton1_Click()
Dim L As Long
L = Range("A65536").End(xlUp).Row + 1
Cells(L, "A").Value = MonthView1
Cells(L, "B").Value = txtLieu
Cells(L, "C").Value = ComboBox1
Cells(L, "D").Value = ComboBox2
Cells(L, "E").Value = CDate(txtHDebut)
Cells(L, "F").Value = CDate(txtHFIN)
End Sub
Cordialement.
 

toff35150

XLDnaute Nouveau
Re : probleme de calcul via un userform

Bonsoir,
Avec le code tout fonctionne bien, mais je viens de m’apercevoir d'un bug. Effectivement si j'entre comme heure de debut 20:00 et comme heure de fin 05:00 il me fait bien tout le calcul, mais si je met 24:00 ou 00:00 comme heure de fin ça bug et ça me renvoi sur cette ligne : Cells(L, "F").Value = CDate(txtHFIN).
Pouvez vous m’éclairer?
merci d'avance
 

Dranreb

XLDnaute Barbatruc
Re : probleme de calcul via un userform

Chez moi, pas de problème avec MsgBox CDate("00:00") qui m'affiche "00:00:00"
En revanche MsgBox CDate("24:00") fait une incompatibilité de type.
De toute façon les erreurs de saisies doivent être gérées dans un userform. On Error Resume Next devant la tentative de conversion pour que ça n'entraine pas d'arrêt et If Err Then derrière pour corriger automatiquement si possible.
À +
 

Discussions similaires

Réponses
12
Affichages
795

Statistiques des forums

Discussions
312 697
Messages
2 091 062
Membres
104 749
dernier inscrit
Boussou