Häufig möchte man ermitteln, welche Dauer ein Prozess, ein Programmteil o.ä. benötigt. Die nachfolgende einfache Funktion ermittelt die Dauer und gibt sie in gewohnter Form aus: Private Function GetDauer(dAnfang As Date, dEnde As Date) As String ' Wir ermitteln die Zeitdifferenz in Sekunden und errechnen daraus ' die Zeitdifferenz-Angabe im gewohnten Ausgabeformat Dim lngMin As Long Dim lngStd As Long Dim lngSek As Long lngSek = DateDiff("s", dAnfang, dEnde) ' Stundenwert ermitteln lngMin = Int(lngSek / 60) lngStd = Int(lngMin / 60) ' die Ausgabewerte für Minuten und Sekunden errechnen lngMin = lngMin - (lngStd * 60) lngSek = lngSek - (lngMin * 60) - (lngStd * 3600) ' ins Format hh:nn:ss umwandeln GetDauer = Format$(lngStd, "00") & ":" & _ Format$(lngMin, "00") & ":" & Format$(lngSek, "00") End Function Der Aufruf der Funktion könnte z.B. so erfolgen: Private Sub DauerErmitteln() ' Die Dauer eines Prozesses, Programmteils o.ä. soll ' exakt gemessen werden ' Achtung: Anfangs und Endzeit müssen einen komletten ' Datumswert, also nicht nur die Zeit, enthalten. Dim dAnfang As Date Dim dEnde As Date Dim sAusgabe As String ' Beginn der Messung dAnfang = Now() ' Aufruf des Prozesses, dessen Dauer gemessen werden soll ... ' Ende der Messung dEnde = Now() ' Ausgabe der Dauer MsgBox "Dauer: " & GetDauer(dAnfang, dEnde) End Sub Dieser Tipp wurde bereits 20.961 mal aufgerufen.
Anzeige
![]() ![]() ![]() Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Neu! sevEingabe 3.0 ![]() Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |