Gå til innhold

Anbefalte innlegg

Hallo

 

tenker på å lage en stoppeklokke her, men det var ikke så lett som jeg trodde :p her prøvd denne her, men hvis jeg skriver et par timer så får jeg type mismatch bare..

 

Sub test()

Dim strTid As String
Dim byteTime As Byte
Dim byteMinute As Byte
Dim byteSecond As Byte

  byteTime = Hour(Time)
  byteMinute = Minute(Time)
  byteSecond = Second(Time)
  
  byteTime = byteTime + txtTime.Text

  strTid = Str(byteTime) & ":" & Str(byteMinute) & ":" & Str(byteSecond)
  MsgBox FormatDateTime(strTid, vbLongTime)


End Sub

Dette er pluss, men det er vel bare å skifte + med - Noen som har en kode som tar litt flere timer? denne tok bare 2 her..

Endret av jonas22282460
Lenke til kommentar
Videoannonse
Annonse

Du kunne vel gjort noe sånt:

 

Sub test()

Dim strTid As String
Dim byteTime As Byte
Dim byteMinute As Byte
Dim byteSecond As Byte

byteTime = Hour(Time)
byteMinute = Minute(Time)
byteSecond = Second(Time)

byteTime = byteTime - txtTime.Text
If byteTime < 0 Then byteTime = byteTime + 23
If byteMinute < 0 Then byteMinute = byteMinute + 59
If byteSecond < 0 Then byteSecond = byteSecond + 59
 
strTid = Str(byteTime) & ":" & Str(byteMinute) & ":" & Str(byteSecond)
MsgBox FormatDateTime(strTid, vbLongTime)
 
End Sub

 

Hadde vært en ide og tatt med dato og, sånn at du kan telle mer enn 24 timer.

Endret av aadnk
Lenke til kommentar

Sub test()

Dim strTid As String
Dim byteTime As Byte
Dim byteMinute As Byte
Dim byteSecond As Byte
Dim byteday As Byte

byteTime = Hour(Time)
byteMinute = Minute(Time)
byteSecond = Second(Time)
byteday = Day(Time)

byteTime = byteTime - Text1.Text
If byteTime < 0 Then byteTime = byteTime + 23
If byteMinute < 0 Then byteMinute = byteMinute + 59
If byteSecond < 0 Then byteSecond = byteSecond + 59
If byteday < 0 Then byteday = byteday + 364

strTid = Str(byteday) & ":" & Str(byteTime) & ":" & Str(byteMinute) & ":" & Str(byteSecond)
MsgBox FormatDateTime(strTid, vbLongTime)

End Sub

Denne gir bare type mismatch uannsett hva jeg skriver..

 

'MsgBox FormatDateTime(strTid, vbLongTime)' er feil :dontgetit:

 

Edit: omformulerer spørsmålet litt.. hva blir 'dag' i visual basic engelsk? blir det 'day' som jeg skrev der eller blir det noe annet?

Endret av jonas22282460
Lenke til kommentar

Nå har jeg "lagd" en stoppeklokke her som for en tid fra tre tekstbokser og printer ut på en label hvor lenge det er igjen. problemet er bare at etter to sekkunder så blir bare label'en ::-1 Skjønner ikke hva som er galt med den..

 

Private Sub Timer2_Timer()
If Label4.Caption = "" Then

Dim timer
timer = Text1.Text
Dim minutter
minutter = Text2.Text
Dim sekkunder
sekkunder = Text3.Text

Label4.Caption = timer & ":" & minutter & ":" & sekkunder

Else
If sekkunder >= 0 Then
sekkunder = sekkunder - 1
Label4.Caption = timer & ":" & minutter & ":" & sekkunder
Else
sekkunder = 59
Label4.Caption = timer & ":" & minutter & ":" & sekkunder
If minutter > 0 Then
minutter = minutter - 1
Label4.Caption = timer & ":" & minutter & ":" & sekkunder
Else
minutter = 59
Label4.Caption = timer & ":" & minutter & ":" & sekkunder
If timer >= 0 Then
timer = timer - 1
Label4.Caption = timer & ":" & minutter & ":" & sekkunder
Else
'tiden er ute!!
End If

End If

End If

End If

End Sub

 

Må jeg dimme timer as noe? :dontgetit:

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...