Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
968to972
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Stunden über VBA runden

Stunden über VBA runden
17.04.2008 20:05:42
Uwe
Hallo!
Ich stehe vor einem, derzeit für mich schier unlösbaren, Problem. Mit einem kleinen Programm gilt es Stunden zu summieren (kein Problem) die Summe dann aber zu runden. Wie funktioniert das ausschließlich über VBA? Es darf also weder Formel noch Funktion sein...
Zur Verdeutlichung ein Beispiel:
Von 0:00 bis 7:00 und von 15:30 bis 24:00 ergibt insgesamt 15:30 Stunden (logo...) Nun muß in diesem Fall das Ergebnis aber zwingend 16:00 Stunden ergeben. Wie das? Es gilt die Regel, das bei = 30 Min aufzurunden ist.
Selbstverstäbdlich bin ich für des Rätsels Lösung super dankbar.
Besten Dank
Uwe

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Stunden über VBA runden
17.04.2008 20:43:28
Tino
Hallo,
hier mal zwei Möglichkeiten
Formel:
 ABCD
115:3024:00:008:30 
200:0009:009:00 
3  17:3018:00:00

Formeln der Tabelle
ZelleFormel
C1=B1-A1
C2=B2-A2
C3=SUMME(C1:C2)
D3=WENN(MINUTE(C3)>=30;ZEIT(STUNDE(C3)+1;0;0); ZEIT(STUNDE(C3); 0;0))

gleiches mit VBA:

Dim Zeit As Date
Zeit = _
[=IF(MINUTE(C3)>=30,TIME(HOUR(C3)+1,0,0),TIME(HOUR(C3),0,0))]


Gruß
Tino

Anzeige
AW: Stunden über VBA runden
17.04.2008 20:57:54
Erich
Hallo Uwe,
oder so?

Sub RundStunden()
Dim datD As Date
datD = TimeValue("15:30")
MsgBox "vorher:   " & Format(datD, "hh:mm")
datD = TimeSerial(Hour(datD) - (Minute(datD) >= 30), 0, 0)
MsgBox "nachher1: " & Format(datD, "hh:mm")
' oder
datD = TimeValue("15:30")
datD = Round(24 * datD + 0.000000000001, 0) / 24
MsgBox "nachher2: " & Format(datD, "hh:mm")
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
P.S.: An deinem Level musst du vielleicht noch etwas arbeiten?

AW: Stunden über VBA runden
18.04.2008 18:03:00
Uwe
Hallo Erich!
Dein erstes Beispiel trifft genau (m)einen Nagel auf den Kopf! Besten Dank dafür. Nun ja, mein Level... So ganz "dummi" isser sicher nicht, der Uwe. Aaaaber...
Die aufwendigsten Kalendermodule, z.B. zudem die Umstellung von Winter- auf Sommerzeit, allesamt die aufwendigsten Module hinkriegen, aber noch nicht mal "rechnen" können (via VBA) das sind so meine Baustellen. Na ja, ich gestehe freiwillig...
Aber ganz ganz aufrichtig BESTEN DANK für Deine Hilfe!!!
Gruß aus dem sonnigen Kleve (KLE)
Uwe
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige