Guten Morgen,
ich versuche über VBA einen Bereich (C10 bis L16), in dem Uhrzeiten stehen, auf 15 Minuten auf- bzw. abzurunden.
Leider wird in die Zelle wird #NAME? geschieben, sobald ich den Wert runden möchte.
Ich hab aktuelle keine Ahnung, was an der Formel falsch ist, denn trage ich anstelle 'Hour(rcell.value)' die Zelle direkt ein 'Hour(C10)', funktioniert das ganze.
Hier mal meinen Code:
Danke für die Hilfe
ich versuche über VBA einen Bereich (C10 bis L16), in dem Uhrzeiten stehen, auf 15 Minuten auf- bzw. abzurunden.
Leider wird in die Zelle wird #NAME? geschieben, sobald ich den Wert runden möchte.
Ich hab aktuelle keine Ahnung, was an der Formel falsch ist, denn trage ich anstelle 'Hour(rcell.value)' die Zelle direkt ein 'Hour(C10)', funktioniert das ganze.
Hier mal meinen Code:
Visual Basic-Quellcode
- Private Sub Worksheet_SelectionChange(ByVal Target As Range)
- Dim rCell As Range
- For Each rCell In ActiveSheet.Range("C10:L16")
- If rCell.Value <> "" Then
- If (Minute(rCell) >= 53) Then
- ' rCell.Value = rCell.Value + TimeSerial(1, 0, 0)
- rCell.Value = [=Time(Hour(rcell.value)+1, 0, 0)]
- ' rCell.Value = [=Time(Hour(Cells(rCell.Row,rCell.Column))+1, 0, 0)]
- ' rCell = [=Time(Hour(rCell)+1, 0, 0)]
- ElseIf (Minute(rCell) <= 7) Then
- ' rCell = [=Time(Hour(rCell), 0, 0)]
- ElseIf (Minute(rCell) <= 22) Then
- ' rCell = [=Time(Hour(rCell), 15, 0)]
- ElseIf (Minute(rCell) <= 37) Then
- ' rCell = [=Time(Hour(rCell), 30, 0)]
- ElseIf (Minute(rCell) <= 52) Then
- ' rCell = [=Time(Hour(rCell), 45, 0)]
- End If
- End If
- Next rCell
- End Sub
Danke für die Hilfe
wintoolz.de
Benutze auch du Ecosia
- wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
- wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
- wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten
Benutze auch du Ecosia