Hoe tijdsverschil in vba te berekenen (met voorbeelden)
U kunt de volgende basissyntaxis in VBA gebruiken om het verschil tussen twee tijden te berekenen:
Sub FindTimeDifference()
Dim i As Integer
For i = 2 To 7
'calculate time difference in days
Range(" C " & i) = Range(" B " & i) - Range(" A " & i)
'calculate time difference in hours
Range(" D " & i) = (Range(" B " & i) - Range(" A " & i)) * 24
'calculate time difference in minutes
Range(" E " & i) = (Range(" B " & i) - Range(" A " & i)) * 24 * 60
'calculate time difference in seconds
Range(" F " & i) = (Range(" B " & i) - Range(" A " & i)) * 24 * 60 * 60
Next i
End Sub
Deze specifieke macro berekent het verschil tussen de overeenkomstige tijden in de bereiken A2:A7 en B2:B7 en retourneert de volgende resultaten:
- C2:C7 bevat het tijdsverschil in dagen
- D2:D7 bevat het tijdsverschil in uren
- E2:E7 bevat het tijdsverschil in minuten
- F2:F7 bevat het tijdsverschil in seconden
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Bereken tijdsverschil in VBA
Stel dat we de volgende twee kolommen met begin- en eindtijden in Excel hebben:
We kunnen de volgende macro maken om het tijdsverschil tussen elke begin- en eindtijd te berekenen en de resultaten weer te geven in de kolommen C tot en met F:
Sub FindTimeDifference()
Dim i As Integer
For i = 2 To 7
'calculate time difference in days
Range(" C " & i) = Range(" B " & i) - Range(" A " & i)
'calculate time difference in hours
Range(" D " & i) = (Range(" B " & i) - Range(" A " & i)) * 24
'calculate time difference in minutes
Range(" E " & i) = (Range(" B " & i) - Range(" A " & i)) * 24 * 60
'calculate time difference in seconds
Range(" F " & i) = (Range(" B " & i) - Range(" A " & i)) * 24 * 60 * 60
Next i
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Kolommen C tot en met F geven het tijdsverschil weer tussen de begin- en eindtijd in verschillende eenheden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
Datums vergelijken in VBA
Hoe dagen tussen twee datums in VBA te berekenen
Hoe string naar datum te converteren in VBA