Zeit in Zehntel oder Hundertstel mit Excel
Schritt-für-Schritt-Anleitung
Um die Zeit in Hundertstel oder Zehntel in einem Excel-Makro zu erfassen, kannst du die Timer-Funktion verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
-
Öffne den Visual Basic for Applications (VBA) Editor in Excel (Alt + F11).
-
Füge ein neues Modul hinzu (Rechtsklick auf „VBAProject“ > Einfügen > Modul).
-
Kopiere den folgenden Code in das Modul:
Option Explicit
Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
Public Sub LogTime()
Dim zaehler As Long
Dim sngStart As Single
zaehler = 1
Do
sngStart = Timer
Cells(zaehler, 1).Value = Timer / 86400 ' Umrechnung in Excel-Zeit
Cells(zaehler, 1).NumberFormat = "[hh]:mm:ss.00" ' Format für Hundertstel
Sleep 200 ' Pause für 200 ms
zaehler = zaehler + 1
Loop While zaehler < 20 ' Beispiel: 20 Einträge
End Sub
-
Schließe den VBA-Editor und führe das Makro aus (Alt + F8, wähle LogTime und klicke auf „Ausführen“).
Häufige Fehler und Lösungen
Alternative Methoden
Wenn du eine genauere Zeitmessung benötigst, kannst du auch API-Funktionen nutzen, um eine Auflösung von 10 ms zu erreichen. Dazu benötigst du jedoch zusätzliche Software- oder Programmierkenntnisse.
Ein Beispiel für eine API-Funktion findest du hier.
Praktische Beispiele
Hier ein einfaches Beispiel zur Verwendung der Timer-Funktion:
Sub BeispielTimer()
Dim Zeit1 As Single
Zeit1 = Timer
Cells(1, 1).Value = Zeit1 / 86400
Cells(1, 1).NumberFormat = "[hh]:mm:ss.00"
End Sub
Dieses Makro gibt die aktuelle Zeit in Hundertstel zurück und formatiert sie entsprechend.
Tipps für Profis
- Nutze die
Sleep-Funktion, um Pausen zwischen den Zeitmessungen zu implementieren. Dies ist besonders nützlich, wenn du Daten mit einer hohen Frequenz erfassen möchtest, wie z.B. bei einer Messrate von 5 pro Sekunde.
- Achte darauf, dass die maximale Auflösung bei der Verwendung der
Timer-Funktion etwa 55 ms beträgt. Für präzisere Messungen solltest du überlegen, alternative Programmiermethoden oder Hardwarelösungen einzusetzen.
FAQ: Häufige Fragen
1. Wie kann ich die Zeit in Excel im Format Hundertstel anzeigen?
Du kannst die Zelle mit dem benutzerdefinierten Format "[hh]:mm:ss.00" formatieren, um die Zeit in Hundertstel anzuzeigen.
2. Was bedeutet die Funktion Sleep 555 im Code?
Die Funktion Sleep 555 pausiert das Makro für 555 Millisekunden, bevor es mit dem nächsten Schritt fortfährt. Dies kann nützlich sein, um die Zeitmessung zu synchronisieren.
3. Warum erhalte ich keine Sekundenbruchteile mit TimeValue?
Die Funktion TimeValue gibt nur die Zeit im Format hh:mm:ss zurück, ohne Bruchteile anzuzeigen. Benutze stattdessen die Timer-Funktion für eine genauere Zeitmessung.