Jeg ved faktisk ikke, om der findes en indbygget funktion til dette formål, men ellers har jeg lavet denne til dig:
Function Afrund(Tid) Afrund = Hour(Tid) & ":00:00" If DateDiff("s", Afrund, FormatDateTime(Tid, vbLongTime)) > 1800 Then Afrund = Hour(DateAdd("h", +1, Tid)) & ":00:00" End If End Function
Der er to problemer i dit spørgsmål nemlig afrunding og formatering begge dele er besværlige i asp.
Afrundingen findes der ingen indbyggede funktioner til i asp hvorfor jeg ligger en halv time til med dateadd hvilket sikre at timen hvil være korrekt afrundet (Det er det samme som oasen gør han bruger blot sek.)
Det andet problem er formatering Der findes en funktion til dette i asp: formatdatetime, men den er temmelig middelmådig da den kun kan formatere til nogle få forudbestemte formater, hvilket betyder at man bliver nødt til at lave en masse string gymnastik for at få det format man ønsker...
Function Afrund(Streng) Tid = FormatDateTime(Tid, vbLongTime) Dato = FormatDateTime(Tid, vbShortDate) Afrund = Hour(Tid) & ":00:00" If DateDiff("s", Afrund, Tid) > 1800 Then Afrund = Hour(DateAdd("h", +1, Tid)) & ":00:00" End If Afrund = Dato & " " & Afrund End Function
ja det er korrekt at asp er et subset af VB, men jeg kan ikke se at serverside/clientsider har noget at gøre med hvilke funktioner der er til rådighed i sproget... mht. formateringsfunktioner er det klart at for predefinerede formater der bygger på os-indstillinger er det serverens indstillinger der bestemmer formatet, men jeg kan ikke se nogen grund til at funktionen datetimeformat ikke kan tage fx "dd-mm-yyyy" som sidste parameter ???
Ellers så brug den sidste af heko124 - den virker fint, og er lidt kortere end min.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.