Tijdverschil berekenen bij gebruik van txtbox

  • Onderwerp starter Onderwerp starter gst
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

gst

Gebruiker
Lid geworden
5 jan 2010
Berichten
125
Besturingssysteem
64-bits besturingssysteem, x64-processor
Office versie
Microsoft Office LTSC Professional Plus 2021
Geacht forum,

Het lukt mij niet om een tijdverschil te berekenen met behulp van een txtbox.
Toch zou ik hier graag gebruik van willen maken.
Heeft iemand een suggestie voor mij hoe dit wel te realiseren is?

Zie bijgevoegd voorbeeld

Bvd GST
 

Bijlagen

Zo moet het wel lukken:
Code:
Private Sub cmdStart_Click()
    frmTijdberekening.txtStarttijd = Format(Now(), "h:mm;@")
End Sub


Code:
Private Sub cmdStop_Click()
    frmTijdberekening.txtEindtijd = Format((Now() + ((10 * Rnd) + 1)), "h:mm;@")
End Sub

Code:
Private Sub cmdTijdTotaal_Click()
    frmTijdberekening.txtTotaaltijd = Format(TimeValue(frmTijdberekening.txtEindtijd) - TimeValue(frmTijdberekening.txtStarttijd), "h:mm;@")
End Sub
 
AccessGuru,

Dank voor je reactie.
Het werkt bijna perfect.
Alleen wanneer begintijd voor 24:00 uur ligt en eindtijd na 24:00 uur, dan klopt de berekening niet.
Is hier ook nog een oplossing voor te bedenken?

Bvd, GST
 
Zo:

Code:
Private Sub cmdStart_Click()
txtStarttijd = Format(Now(), "hh:mm")
End Sub


Private Sub cmdStop_Click()
txtEindtijd = Format((Now() + ((10 * Rnd) + 1)), "hh:mm")
End Sub

Private Sub cmdTijdTotaal_Click()
txtTotaaltijd = Format(Evaluate("mod(" & Replace((TimeValue(frmTijdberekening.txtEindtijd) - TimeValue(frmTijdberekening.txtStarttijd)), ",", ".") & ",1)"), "hh:mm")
End Sub
 
JEC,

Zeer bedankt voor deze oplossing!
Kan het goed toepassen.

Grt. GST
 
In de module van het formulier is het overbodig om frmTijdberekening. of Me. die daar gelijk aan is aan te roepen.

Het kan dus wat korter:
Code:
txtTotaaltijd = Format(Evaluate("mod(" & Replace(TimeValue(txtEindtijd) - TimeValue(txtStarttijd), ",", ".") & ",1)"), "hh:mm")
Of:
Code:
txtTotaaltijd = Format(Evaluate("mod(" & Replace(CDate(txtEindtijd) - CDate(txtStarttijd), ",", ".") & ",1)"), "hh:mm")
een andere methode.
Code:
txtTotaaltijd = Format(CDate(txtEindtijd) - CDate(txtStarttijd) - Int(CDate(txtEindtijd) - CDate(txtStarttijd)), "hh:mm")
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan