Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1192to1196
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeitrechnung

Zeitrechnung
Peter
Liebes Forum
Wie kann ich die Variablen formatieren, dass ich als Ausgabe Startzeit und Endzeit (Uhrzeit inkl. Millisekunden), sowie die Differenz als Minuten, Sekunden und Millisekunden erhalte?
Gruss, Peter
Sub   xyz()
Dim Start As Date
Dim Ziel As Date
Dim Diff As Date
Start = Now
Ziel = Now
Diff = Ziel - Start
Application.StatusBar = Start & " " & Ziel & " : " & Diff
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeitrechnung
21.12.2010 22:53:49
Josef

Hallo Peter,
eine Möglichkeit.

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Private Type SYSTEMTIME
  wYear As Integer
  wMonth As Integer
  wDayOfWeek As Integer
  wDay As Integer
  wHour As Integer
  wMinute As Integer
  wSecond As Integer
  wMilliseconds As Integer
End Type

Public Function SysTime() As Double
  Dim st As SYSTEMTIME
  
  GetSystemTime st
  
  With st
    SysTime = .wHour / 24 + .wMinute / 1440 + .wSecond / 86400 + .wMilliseconds / 86400000
  End With
End Function

Sub xyz()
  Dim dblStart As Double, dblEnd As Double, dblDiff As Double
  Dim strOutput As String
  Dim lngI As Long
  
  
  dblStart = SysTime
  
  'dummy
  For lngI = 0 To 500000000
    
  Next
  
  dblEnd = SysTime
  dblDiff = dblEnd - dblStart
  
  With WorksheetFunction
    strOutput = .Text(dblStart, "hh:mm:ss.000")
    strOutput = strOutput & " - " & .Text(dblEnd, "hh:mm:ss.000")
    strOutput = strOutput & " : " & .Text(dblDiff, "hh:mm:ss.000")
    
  End With
  
  Application.StatusBar = strOutput
End Sub

Gruß Sepp

Anzeige
Korrektur!
21.12.2010 22:59:36
Josef

Hallo Peter,
tausche die Funktion "sysTime" gegen die Folgende.
Public Function SysTime(Optional GMT_Offset As Integer = 1) As Double
  Dim st As SYSTEMTIME
  
  GetSystemTime st
  
  With st
    SysTime = (.wHour + GMT_Offset) / 24 + .wMinute / 1440 + _
      .wSecond / 86400 + .wMilliseconds / 86400000
  End With
End Function


Gruß Sepp

Anzeige
AW: Korrektur!
22.12.2010 07:43:36
Peter
Hallo Sepp
Vielen Dank für diesen Super-Code.
Gruss, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige