Er is een oplossing! Plaats deze VBA-code in je werkbladmodule, dus:
- Open de Visual Basic Editor (Alt-F11)
- Dubbelklik in de boomstructuur linksboven op het blad waarin u uw tijden wilt invoeren
- In het centrale codepaneel plaatst u de onderstaande code.
- Sluit VBE
Gebruik deze code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value < 0 Or Target.Value > 1 And Target.NumberFormat <> "h:mm" Then Exit Sub
Application.EnableEvents = False
Target.Value = Target.Value / 60
Target.NumberFormat = "mm:ss"
Application.EnableEvents = True
End Sub
In het geval dat je het bereik waarin je de gegevens invoert al geformatteerd hebt, gebruik dan deze regel als eerste regel:
If Target.Value < 0 Or Target.Value > 1 Then Exit Sub
Merk op dat dit de waarde en het formaat zal veranderen - elke keer dat je een tijd invoert - of iets dat tussen 0 en 1 ligt! Als je het wilt beperken tot een bepaalde kolom, voeg dan deze regel toe:
If Target.Column <> 3 Then Exit Sub
of deze regel om het te beperken tot een bepaald bereik
If Intersect(Target, Range("A2:A100") Is Nothing Then Exit Sub