/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hjælp til en DateDiff funktion...?
Fra : Magnus


Dato : 13-07-04 15:12

Jeg sidder og roder med at ovennævnte funktion men som jeg kan få til at
vise hvor mange år dage osv. der er mellem to datoer.
Men hvordan gør jeg så istedet for at den skriver "28 måneder" så skriver
den "2 år. 4md." osv.

Er der en som har sådan en funktion jeg kan benytte?


/Magnus




 
 
Morten (13-07-2004)
Kommentar
Fra : Morten


Dato : 13-07-04 18:23

"Magnus" <arnason_fjern_@email.dk> skrev i en meddelelse
news:cd0qk3$r7g$1@news.cybercity.dk...

> Er der en som har sådan en funktion jeg kan benytte?

ar = DateDiff("yyyy", "dato1", "dato2")
md = DateDiff("m", "dato1", "dato2")

md = md - (ar * 12)

Jeg har ikke testet den, men dette burde være hvad du søgte...



Jonas Schmeltz Aaber~ (13-07-2004)
Kommentar
Fra : Jonas Schmeltz Aaber~


Dato : 13-07-04 18:30

Magnus wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg sidder og roder med at ovennævnte funktion men som jeg kan få til at
> vise hvor mange år dage osv. der er mellem to datoer.
> Men hvordan gør jeg så istedet for at den skriver "28 måneder" så
skriver
> den "2 år. 4md." osv.
>
> Er der en som har sådan en funktion jeg kan benytte?

<%
Function CalcDateDiff(EventDate)
EventDate = CDate(EventDate)
TheDate = Now
TheMonth = Month(TheDate)
TheYear = Year(TheDate)

If TheMonth = 12 Then
NMonth = 1
NYear = TheYear + 1
Else
NMonth = m+1
NYear = TheYear
End If

vSECOND = 1
vMINUTE = vSECOND*60
vHOUR = vMINUTE*60
vDAY = vHOUR*24
vMONTH = vDAY*Day(DateAdd("d",-1,DateSerial(NYear,NMonth,1)))
vYEAR =
vDAY*(31+Day(DateAdd("d",-1,DateSerial(TheYear,3,1)))+31+30+31+30+31+31+30+
31+30+31)


TempDD = DateDiff("s",TheDate,EventDate)
TD = TempDD

dYEAR = Fix(TempDD/vYEAR)
cYEAR = dYEAR & " år, "
If dYEAR < 1 Then
dYEAR = 0
cYEAR = ""
End If

TempDD = TempDD - (dYEAR * vYEAR)

dDAY = Fix(TempDD/vDAY)
cDAY = dDAY & " døgn, "
If dDAY < 0 Then
dDAY = 0
cDAY = ""
End If

TempDD = TempDD - (dDAY * vDAY)

dHOUR = Fix(TempDD/vHOUR)
cHOUR = "1 time, "
If dHOUR <> 1 Then
cHOUR = dHOUR & " timer, "
End If
If dHOUR < 0 Then
dHOUR = 0
cHOUR = ""
End If

TempDD = TempDD - (dHOUR * vHOUR)

dMINUTE = Fix(TempDD/vMINUTE)
cMINUTE = "1 minut og "
If dMINUTE <> 1 Then
cMINUTE = dMINUTE & " minutter og "
End If
If dMINUTE < 0 Then
dMINUTE = 0
End If

TempDD = TempDD - (dMINUTE * vMINUTE)

dSECOND = Fix(TempDD/vSECOND)
cSECOND = "1 sekund"
If dSECOND < 0 Then
dSECOND = 0
End If
If dSECOND <> 1 Then
cSECOND = dSECOND & " sekunder"
End If

TempDD = TempDD - (dSECOND * vSECOND)

CDDText = "Der er " & "<br>" & cYEAR & "" & cDAY & "" & cHOUR & "" &
cMINUTE & "" & cSECOND & " til<br>" &_
"den " & FormatDateTime(EventDate, vbLongDate) & " kl. " &
FormatDateTime(EventDate, vbLongTime) & "<br><br>"

dYEAR = DateDiff("yyyy",TheDate,EventDate)
cYEAR = VbTab & dYEAR & " år, eller<br>"
If dYEAR < 1 Then
dYEAR = 0
cYEAR = ""
End If

dMONTH = DateDiff("m",TheDate,EventDate)
cMONTH = VbTab & "1 måned, eller<br>"
If dMONTH <> 1 Then
cMONTH = VbTab & dMONTH & " måneder, eller<br>"
End If
If dMONTH < 1 Then
dMONTH = 0
cMONTH = ""
End If

dDAY = DateDiff("d",TheDate,EventDate)
cDAY = VbTab & dDAY & " døgn, eller<br>"
If dDAY < 0 Then
dDAY = 0
cDAY = ""
End If

dHOUR = DateDiff("h",TheDate,EventDate)
cHOUR = VbTab & "1 time, eller<br>"
If dHOUR < 0 Then
dHOUR = 0
End If
If dHOUR <> 1 Then
cHOUR = VbTab & dHOUR & " timer, eller<br>"
End If

dMINUTE = DateDiff("n",TheDate,EventDate)
cMINUTE = VbTab & "1 minut" & VbCrLf
If dMINUTE < 0 Then
dMINUTE = 0
End If
If dMINUTE <> 1 Then
cMINUTE = VbTab & dMINUTE & " minutter, eller<br>"
End If

dSECOND = DateDiff("s",TheDate,EventDate)
cSECOND = VbTab & "1 sekund" & VbCrLf
If dSECOND < 0 Then
dSECOND = 0
End If
If dSECOND <> 1 Then
cSECOND = VbTab & dSECOND & " sekunder"
End If

CDDText = CDDText & VbCrLf & "Eller:<br>" &_
"" & cYEAR & cMONTH & cDAY & cHOUR & cMINUTE & cSECOND & "<br><br>" &_
"================================================="

CalcDateDiff = CDDText
End Function

myString = CalcDateDiff(Day(Now)&"/"&Month(Now)&"/"&Year(Now)&" 23:59:59")
& "<br><br><br><br>" &_
CalcDateDiff("12/24/"&Year(Now)&" 18:00:01") &_
"<br><br><br><br>"

%>

Husk at tjekke om linieskiftene er korrekte (newsgroups er eksperter i at
dele en linie det forkerte sted!!)

Håber det kan bruges!

MVH Jonas (aka Juke)

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste