Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: TextBox - Format wenn Zeit größer 24:00

TextBox - Format wenn Zeit größer 24:00
11.01.2013 21:30:12
Frank
Hallo noch einmal!
Wieder allen vorab ein schönes WE!
Mittels folgendem Codeschnipsel berechne ich Zeiten:
TextBox126.Value = Format(CDate(TextBox19.Value) + CDate(TextBox29.Value) + CDate(TextBox39.Value) + CDate(TextBox49.Value), "hh:mm")
TextBox126.Value = Format(CDate(TextBox126), "hh:mm")
Das Ergebnis müsste 24:30 sein, es wird mir aber nur 00:30 angezeit. Was muss ich verändern?
Danke und Gruß
Frank H.

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TextBox - Format wenn Zeit größer 24:00
11.01.2013 21:56:31
serge
Hallo Frank
"[hh]:mm" nicht "hh:mm"
Gruss
Serge

AW: TextBox - Format wenn Zeit größer 24:00
11.01.2013 22:06:58
Hajo_Zi
Hallo Frank,
soweit mir bekannt kennt VBA nicht [hh]
Sub zeit()
Dim DaZeit As Date
DaZeit = "1:30"
MsgBox Format(DaZeit * 24, "[hh]:mm:ss")
MsgBox Val((DaZeit * 24) * 24) & Mid(Format(DaZeit * 24, "hh:mm:ss"), 3, 6)
End Sub

Anzeige
AW: TextBox - Format wenn Zeit größer 24:00
12.01.2013 09:02:10
hary
Hallo Frank
TextBox126 = WorksheetFunction.Text(CDate(TextBox19.Value) + CDate(TextBox29.Value) + CDate(TextBox39.Value) + CDate(TextBox49.Value), "[hh]:mm")

gruss hary

AW: TextBox - Format wenn Zeit größer 24:00
12.01.2013 09:57:36
Zeiten
Hallo Harry!
Super! Funzt wie gewünscht, aber auch den anderen beiden mein Dank für ihre Mühe!
Also allerherzlichsten Dank und ein schönes WE!
Gruß Frank H.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Formatierung einer TextBox in Excel bei Zeiten über 24:00


Schritt-für-Schritt-Anleitung

Um eine TextBox in Excel so zu formatieren, dass sie Zeiten über 24:00 korrekt darstellen kann, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein UserForm hinzu: Klicke mit der rechten Maustaste auf ein Projekt und wähle Einfügen > UserForm.

  3. Füge eine TextBox hinzu: Platziere eine TextBox auf dem UserForm.

  4. Füge den folgenden Code in das Codefenster ein:

    Private Sub TextBox126_Exit(ByVal Cancel As MSForms.ReturnBoolean)
       TextBox126.Value = Format(CDate(TextBox19.Value) + CDate(TextBox29.Value) + CDate(TextBox39.Value) + CDate(TextBox49.Value), "[hh]:mm")
    End Sub
  5. Verwende die richtige Formatierung: Achte darauf, dass du in Format das Format [hh]:mm verwendest, um Zeiten über 24 Stunden korrekt darzustellen.


Häufige Fehler und Lösungen

  • Problem: Die Ausgabe zeigt 00:30 statt 24:30.

    • Lösung: Stelle sicher, dass du [hh]:mm im Format-Befehl benutzt. Der Code sollte wie folgt aussehen:
    TextBox126.Value = Format(CDate(TextBox19.Value) + CDate(TextBox29.Value) + CDate(TextBox39.Value) + CDate(TextBox49.Value), "[hh]:mm")
  • Problem: VBA erkennt das Format [hh] nicht.

    • Lösung: Verwende die WorksheetFunction.Text Methode, um das gewünschte Format zu erzielen:
    TextBox126 = WorksheetFunction.Text(CDate(TextBox19.Value) + CDate(TextBox29.Value) + CDate(TextBox39.Value) + CDate(TextBox49.Value), "[hh]:mm")

Alternative Methoden

Wenn du eine andere Methode ausprobieren möchtest, kannst du folgende Alternative verwenden:

  • Verwendung einer Berechnung: Berechne die Gesamtstunden und Minuten separat und formatiere sie anschließend. Hier ein Beispiel:

    Sub zeit()
       Dim DaZeit As Date
       DaZeit = "1:30"
       MsgBox Format(DaZeit * 24, "[hh]:mm:ss")
    End Sub

Diese Methode verwendet CDate, um die Zeit zu formatieren und gibt dir mehr Kontrolle über die Darstellung.


Praktische Beispiele

Hier sind einige praktische Beispiele zur Anwendung des Codes:

  1. Summe mehrerer TextBoxen:

    TextBox126.Value = Format(CDate(TextBox1.Value) + CDate(TextBox2.Value) + CDate(TextBox3.Value), "[hh]:mm")
  2. Einfügen eines Button-Events:

    Private Sub CommandButton1_Click()
       TextBox126.Value = Format(CDate(TextBox19.Value) + CDate(TextBox29.Value), "[hh]:mm")
    End Sub

Diese Beispiele zeigen, wie du den Code anpassen und verwenden kannst, um Zeiten in Excel richtig darzustellen.


Tipps für Profis

  • Verwende CDate nur, wenn nötig: Manchmal ist es besser, die Daten direkt als Zeitwerte zu handhaben, um mögliche Fehlerquellen zu reduzieren.
  • Teste deine Formate: Überprüfe immer, ob das Format in verschiedenen Szenarien funktioniert, insbesondere wenn du mit Zeiten arbeitest, die über 24 Stunden hinausgehen.
  • Nutze die Hilfe-Funktion: Excel bietet viele Funktionen, die dir helfen können, wie die DateValue oder TimeValue Funktionen, um sicherzustellen, dass deine Daten korrekt interpretiert werden.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass meine TextBox immer das richtige Format hat?
Verwende die Format-Funktion mit dem korrekten Formatstring [hh]:mm, um sicherzustellen, dass die Ausgabe richtig angezeigt wird.

2. Was passiert, wenn ich eine Zeit eingebe, die nicht im richtigen Format ist?
Wenn die Eingabe nicht korrekt ist, wird ein Fehler angezeigt. Stelle sicher, dass die Eingabewerte im Format hh:mm sind, bevor du sie konvertierst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige