|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Nouveau membre du Club
![]() Date d'inscription: janvier 2010
Messages: 52
|
Bonjour le forum
Je but sur un problème Je voudrais calculer le temps entre deux heures que je rentre dans 2 txtbox. Je voudrais que se résultat s'affiche dans une troisième txtbox. Merci de votre aide |
|
|
|
|
|
#2 |
|
Membre Expert
![]() Date d'inscription: juillet 2008
Messages: 1 253
|
Bonsoir:
Code :
Private Sub TextBox1_AfterUpdate() Dim diffmin As Integer, h As Integer, mn As Integer On Error GoTo fin diffmin = DateDiff("n", CDate(Me.TextBox1), CDate(Me.TextBox2)) h = Int(diffmin / 60) mn = diffmin - 60 * h Me.TextBox3 = h & ":" & mn fin: End Sub Private Sub TextBox2_AfterUpdate() Dim diffmin As Integer, h As Integer, mn As Integer On Error GoTo fin diffmin = DateDiff("n", CDate(Me.TextBox1), CDate(Me.TextBox2)) h = Int(diffmin / 60) mn = diffmin - 60 * h Me.TextBox3 = h & ":" & mn fin: End Sub
__________________
Cordialement. |
|
|
|
|
|
#3 |
|
Nouveau membre du Club
![]() Date d'inscription: janvier 2010
Messages: 52
|
Merci mercatog
Comme toujours tu a la reponse loll Pourrais tu m'expliquer ton code je comprend comment l'adapter |
|
|
|
|
|
#4 |
|
Membre Expert
![]() Date d'inscription: juillet 2008
Messages: 1 253
|
Avec le commentaire
Code :
Private Sub TextBox1_AfterUpdate() 'après mise à jour de la donnée de textbox1 Dim diffmin As Integer 'la différence en minutes entre textbox1 et textbox2 Dim h As Integer 'le nombre d'heures dans diffmin Dim mn As Integer 'les minutes restants me.textbox3="" 'on vide textebox3 On Error GoTo fin 'si erreur (textebox1 ou 2 est vide ou une donnée non valide, on sort diffmin = DateDiff("n", CDate(Me.TextBox1), CDate(Me.TextBox2)) 'F1 sur DateDiff ici la différences en minutes ("n")entre deux dates textbox1 et 2 h = Int(diffmin / 60) 'on divise par 60 et on prends la pertie entière mn = diffmin - 60 * h 'les minutes restantes Me.TextBox3 = h & ":" & mn 'on récupère dans textbox3 le résultat sous la forme h:min fin: End Sub
__________________
Cordialement. |
|
|
|
|
|
#5 |
|
Nouveau membre du Club
![]() Date d'inscription: janvier 2010
Messages: 52
|
je n'arrive pas a le faire fonctionner
Je t'envoie mon fichier si tu peux m'aider plus Je l'ai remis comme il était C'est dans mon UFCarte que je voudrais compter le temps entre départ et fin |
|
|
|
|
|
#6 |
|
Membre Expert
![]() Date d'inscription: juillet 2008
Messages: 1 253
|
Bonjour,
désolé, je suis encore en XL2003
__________________
Cordialement. |
|
|
|
|
|
#7 |
|
Membre du Club
![]() Date d'inscription: décembre 2007
Messages: 93
|
Bonjour
Ci dessous une macro pour calculer les heures Appel de la procédure Code :
Private Sub CommandFin_Click() TextFin.Value = Time If Not IsDate(TextPrise.Value) Or CStr(TextPrise) = "" Then Exit Sub If Not IsDate(TextFin) Or CStr(TextFin) = "" Then Exit Sub calculheure TextPrise, TextFin End Sub Code :
Private Sub calculheure(tdated As MSForms.TextBox, tdatef As MSForms.TextBox) Dim dated As Date Dim datef As Date Dim minuit As Date dated = CDate(tdated.Value) datef = CDate(tdatef.Value) minuit = TimeSerial(24, 0, 0) If datef > dated Then Me.TextDélai = Format(datef - dated, "hh:nn:ss") If datef < dated Then Me.TextDélai = Format((minuit - dated) + datef, "hh:nn:ss") End Sub JP014 |
|
|
|
|
|
#8 |
|
Nouveau membre du Club
![]() Date d'inscription: janvier 2010
Messages: 52
|
Merci cela fonctionne
hop encore un resolut |
|
|
|
|
|
![]() |
||
Resultat de duree entre deux heures dans une txtbox
|
||
| Outils de la discussion | |
|
|