Zeit im Format hh:mm ausgeben

Der O

Mitglied
Hallo,

ich habe hier ein kleines Programm beschrieben,mit dem die Flugzeit berechnet werden soll.

Eingaben sind:

Flugstrecke
Geschwindigkeit
Windgeschwindigkeit (wobei negative Windgeschw. Gegenwindbedeutet)

Wie gebe is die Zeit t nun im Feld im Format hh:mm aus?
ImMoment ist es ja einfach eine dezimale Stundenangabe.

Eine kleine Hilfe wäre super, ich steh voll aufm Schlauch! :p

PHP:
Option Explicit
Private Sub cmd_Berechne_Click()

Dim v As Single, t As Single, s As Single, v1 As Single

s = Text1.Text
v = Text2.Text
v1 = Text3.Text

If s <= 0 Then
    MsgBox "Bitte einen postiven Wert eingeben!"
Else
    If v <= 0 Then
        MsgBox "Bitte einen positiven Wert eingeben!"
    Else

        If v = -v1 Then
            MsgBox "Absturzgefahr! Schneller fliegen!"
        Else
            If v + v1 <= 0 Then
                MsgBox "Sie werden abstürzen!"
            Else
                t = s / (v + v1)
            End If
        End If
    End If
End If
 
'Und jetzt soll die Zeit t im Format hh:mm im Feld 4 ausgegeben werden.

Text4.Text = t

End Sub
 
Wir hatten diese Frage schon mal und es gab keine Antwort drauf, da dieses Problem nun wirklich sehr einfach ist, aber nunja. Manchmal steht jeder auf dem Schlauch. Hier nun also die Lösung (ich hoffe du hast das so gemeint):
Code:
    'Wenn du zum Beispiel 4000 Sekunden hast:
    t = 4000
    
    'Anzahl Stunden:
    h = t \ 3600
    'Anzahl Minuten
    m = (t Mod 3600) \ 60
    'Anzahl Sekunden:
    s = t - h * 3600 - m * 60
h gibt die Anzahl der ganzen Stunden aus, m steht für Minute und s für die verbleibenden Sekunden.
Vielleicht zum besseren Verständnis: Mod gibt den Rest einer Division aus und der umgekehrte Teilstrich \ gibt das Ergebnis einer Division ohne Kommastellen aus.
 
Hallo,

ja, eigentlich ist es sehr einfach, aber es kommt jetzt immer noch Quatsch raus.
Ich habe das jetzt wie folgt gelöst, und wenn ich nun mal Daten eingebe und sie überprüfe, dann stimmen sie nicht.

Wo könnte da noch der fehler liegen?
PHP:
Option Explicit
Private Sub cmd_Berechne_Click()

Dim v As Single, t As Single, s As Single, v1 As Single, sec As Single, m As Single, h As Single

s = Text1.Text
v = Text2.Text
v1 = Text3.Text

If s <= 0 Then
    MsgBox "Bitte einen postiven Wert eingeben!"
Else
    If v <= 0 Then
        MsgBox "Bitte einen positiven Wert eingeben!"
    Else

        If v = -v1 Then
            MsgBox "Absturzgefahr! Schneller fliegen!"
        Else
            If v + v1 <= 0 Then
                MsgBox "Sie werden abstürzen!"
            Else
                t = s / (v + v1)
            End If
        End If
    End If
End If

'Stunden in Sekunden umrechnen

sec = t * 3600

'Sekunden in Stunden umrechnen, ohne Rest (\)

h = sec \ 3600

'Sekunden in Minuten umrechnen

m = (sec Mod 3600) \ 60

Text4.Text = h & ":" & m

End Sub
 
Zurück