Bonsoir à tous....
Julien, ce n'est pas une fausse manip de "mary_tssi".
Vers 16h45/17h00, j'ai posté une réponse en vbs à cette question,
et elle n'apparait pas.
Comme tout le monde (forum) sait, le site de Nix et compères (ce n'est pas péjoratif)
est en ré-réorganisation.......
Ce qui explique surement (ou peut-être) que ce post se retrouve dans la catégorie:
Thèmes / CodeS-SourceS / A propos des sites CodeS-SourceS / Boîte à idée pour améliorer le site
Coté question de "mary_tssi", j'utilise, moi-aussi DateDiff pour comparer x dates.
Je n'avais jamais eu à utliser la simple commande (qui répond à la validation de cette question
selon le VB utilisé, puisque le language n'est pas précisé) :
MsgBox(DateDiff("n", "12:20:21", "12:23:21")) ' renvoie 3'.
et
MsgBox(DateDiff("n", "12:20:45", "12:23:21")) 'renvoie 3' aussi .
Bonne soirée de prog.
jean-marc
Ci-dessous, exemple que j'avais proposé (et donc à adapter)
Dim Saisie, DateEntree, DateSortie, Msg, n, hh, mn
Saisie = InputBox(vbCrLf&vbCrLf&vbCrLf&vbCrLf&"Saisir votre date sous la forme:"_
&vbCrLf&vbCrLf&"jj/mm/aaaa hh:mm - jj/mm/aaaa hh:mm"&vbCrLf&"Remplacer les 5 derniers caractères hh:mm",_
"Calcul d'intervalle de temps en minutes", Left(Now, 16) & " - " & Left(Now, 10) & " 00:15")
DateEntree = Mid(Saisie, 1, 16) & ":00"
DateSortie = Mid(Saisie, 20, 16) & ":00"
' y = DateDiff("yyyy", DateSortie, DateEntree) ' aaaa
' m = DateDiff("m", DateSortie, DateEntree) ' mm
' d = DateDiff("y", DateSortie, DateEntree) ' jj
' h = DateDiff("h", DateSortie, DateEntree) ' hh
' n = DateDiff("n", DateSortie, DateEntree) ' mn
' s = DateDiff("s", DateSortie, DateEntree) ' ss
n = DateDiff("n" , DateSortie, DateEntree)
Temps = n * 60 'temps en secondes
hh = Temps / 3600
mn = (hh - Int(hh)) * 60
If hh >= 24 Then
jj = Int(hh / 24)
hh = hh - jj * 24
End If
Conversion = Int(jj) & " j " & Int(hh) & " h " & CInt(mn) & " mn"
Msg = "Comparaison de dates du " & DateSortie & " au " & DateEntree &vbCrLf&vbCrLf
Msg = Msg & "La différence entre les 2 dates est : " &vbCrLf&vbCrL
Msg = Msg & "Nombre total en minutes = " & n &vbCrLf&vbCrLf
MsgBox s & " " & Msg &vbCrLf& " soit: " & Conversion,_
vbApplicationModal + vbDefaultButton1 + vbInformation + vbOKOnly, "Résultat"
If n =0 Then
MsgBox "Les dates à comparer sont identhiques"
InputBox Saisie , "Calcul d'intervalle de temps en minutes", Left(Now, 16) &" - " & Left(Now, 11) & " 00:00"', Left(Now, 16) & " - " & Left(Now, 10) & " 00:00", "Calcul d'intervalle de temps en minutes", Left(Now, 16) & " - " & Left(Now, 11) & " 00:00"
Else
Msg = "Comparaison de dates du " & DateSortie & " au " & DateEntree &vbCrLf&vbCrLf
Msg = Msg & "La différence entre les 2 dates est : " &vbCrLf&vbCrLf
Msg = Msg & "Nombre total en minutes = " & n &vbCrLf&vbCrLf
Msg = Msg & "Nombre de jours = " & Int(jj)&vbCrLf&vbCrLf
Msg = Msg & "Nombre de heures = " & Int(hh)&vbCrLf&vbCrLf
Msg = Msg & "Nombre de minutes = " & CInt(mn)
MsgBox Msg '& "La différence entre les 2 dates est : " &vbCrLf&vbCrLf& Msg
End If