Avko |
14.11.2019 15:52 |
Predmet:decimalni broj u sate:minute:sekunde
Mozda netko zna :
PreuzmiIzvorni kôd (Text):dim decBroj as Double
dim strTime as string
decBroj=9,56
strTime=dec2time(decBroj)
function dec2time(decBroj) as string
sati = Round(decBroj - 0.5)
min = Int((decBroj - Round(decBroj - 0.5)) * 60)
sek = ovo neznam
dec2time = sati & ":" & min & ":" & sek
end function
trebalo bi ispasti 9:33:36 |
zxz |
15.11.2019 00:27 |
Predmet:Re: decimalni broj u sate:minute:sekunde
Dim x As Single
Dim cio As Integer, decdio As Integer
x = 9.56
cio = Int(x)
decdio = (x - Int(x)) * 100
100/56=60/x => x=60*56/100
za secunde isti postupak. |
zxz |
15.11.2019 01:07 |
Predmet:Re: decimalni broj u sate:minute:sekunde
PreuzmiIzvorni kôd (Visual Basic):Function vrijeme(decVrijeme As Single)
Dim cio As Integer, dec As Single, strVrijeme As String
cio = Int(decVrijeme)
START:
dec = (decVrijeme - Int(decVrijeme))
decVrijeme = dec * 60
If strVrijeme = "" Then
strVrijeme = cio & ":" & Int(decVrijeme) & ":"
GoTo START
End If
MsgBox strVrijeme & Int(decVrijeme)
vrijeme = strVrijeme & Int(decVrijeme)
End Function
|
Avko |
15.11.2019 10:22 |
Predmet:Re: decimalni broj u sate:minute:sekunde
Odlicna ti funkcija. Za tebe je to bio mačji kaÅ¡alj, dječja igra, niÅ¡ta lakÅ¡e, kao Å¡etnja u parku.
no ja se juče ubi sa time.
Fino si stavio vrijeme as variant, a od decVrijeme si odbijao pomalo sate, pa minute i ostale na kraju sekunde. "grickala" funkcija decVrijeme kao miš sir. Na kraju si ubacio u vrijeme strVrijeme koji se sastoji od sati i minuta a dodao jos cijeli broj sekundi, stotinke ako su i bile zaboravljene su.
Odlicno.
evo sta sam ja juce izmajmuniso
PreuzmiIzvorni kôd (Text):Function dec2vrijeme(decVrijeme) As String
Dim sati As Single
Dim minute As Single
Dim sekunde As Single
sekunde = (decVrijeme / 24) * 86400
sati = Int(sekunde / 3600)
sekunde = sekunde - (sati * 3600)
minute = Int(sekunde / 60)
sekunde = sekunde - (minute * 60)
If sati < 10 Then dec2vrijeme = "0" & sati & ":" Else dec2vrijeme = sati & ":"
If minute < 10 Then dec2vrijeme = dec2vrijeme & "0" & minute & ":" Else dec2vrijeme = dec2vrijeme & minute & ":"
If sekunde < 10 Then dec2vrijeme = dec2vrijeme & "0" & sekunde Else dec2vrijeme = dec2vrijeme & sekunde
End Function
ja sam prvo podijelio sa 24 da dobijem excel broj vrijeme, onda sam pomnozio sa 86400 da pretvorim sve u sekunde. Nakon toga sam "grickao sekunde". Da sam stavio funkciju kao variant a ne string , nebi trebao dodavati nule na kraju. |
zxz |
15.11.2019 11:18 |
Predmet:Re: decimalni broj u sate:minute:sekunde
hehe kad si men nahvalio evo ti jos jedna mnogo bolja.
Ta bas i nije potpuno tacna ima malu gresku.
U vb to moze i ovako:
PreuzmiIzvorni kôd (Visual Basic):Function vrijeme(broj As Single)
Dim VrijemeBroj As Single
VrijemeBroj = broj / 24
MsgBox Format(VrijemeBroj, "H:MM:SS")
vrijeme_a (broj)
End Function
|
Avko |
15.11.2019 12:17 |
Predmet:Re: decimalni broj u sate:minute:sekunde
Citiraj zxz:hehe kad si men nahvalio evo ti jos jedna mnogo bolja.
Ta bas i nije potpuno tacna ima malu gresku.
U vb to moze i ovako:
PreuzmiIzvorni kôd (Visual Basic):Function vrijeme(broj As Single)
Dim VrijemeBroj As Single
VrijemeBroj = broj / 24
MsgBox Format(VrijemeBroj, "H:MM:SS")
vrijeme_a (broj) <= ovo mi nije jasno, javi gresku
End Function
|
zxz |
15.11.2019 14:25 |
Predmet:Re: decimalni broj u sate:minute:sekunde
hehe pa to samo pobrisi ili kopiraj i uonu prije pa je preumenuj u vrijeme_a |