| VBA-Beispiel 129 | |
|
|
|
Stunden zählen |
|
|
Angenommen Sie haben eine Spalte in der jede Menge Uhrzeiten stehen.
Quelle könnte zum Beispiel ein Logfile mit einigen tausend Zeilen sein.
Jetzt wollen Sie wissen, wie viele Einträge in die Zeit zwischen 9:00 und 10:00 Uhr fallen. Anstatt mit einer Schleife tausende von Zeilen zu durchwühlen, reicht dafür auch eine Anweisung:
MsgBox (WorksheetFunction.CountIf(wks.Columns(2), ">=09:00:00") - _
WorksheetFunction.CountIf(wks.Columns(2), ">=10:00:00"))
|
|
Die Schleife wird dann wieder ganz brauchbar um 24 Stunden zu durchlaufen:
Public Sub StundenZaehlen() Dim wks As Worksheet Dim lngStd As Long Set wks = ActiveSheet 'Mit einer Schleife die 24 Stunden durchlaufen. 'Für jede Stunde die Vorkommen in Spalte B zählen 'und in Spalte E eintragen: For lngStd = 0 To 23 wks.Cells(lngStd + 2, 4) = lngStd & " bis " & lngStd + 1 wks.Cells(lngStd + 2, 5) = _ (WorksheetFunction.CountIf(wks.Columns(2), ">=" & lngStd & ":00:00") - _ WorksheetFunction.CountIf(wks.Columns(2), ">=" & lngStd + 1 & ":00:00")) Next lngStd Set wks = Nothing End Sub |
|
|
Download: vba129.zip |
|
|
relevante Links: |
|
| |