Avatar billede carparknorth Nybegynder
03. maj 2004 - 13:31 Der er 9 kommentarer og
1 løsning

Find startdag i uge

Hejsa...

Jeg har et problem. Jeg har udviklet et lille kalender system og nu vil jeg gerne have lavet en funktion, som viser 4 uger ad gangen (ikke en måned, men 4 uger)

Jeg får af systemet et ugenr og nu er mit problem, at jeg skal have fundet en måde at beregne den første dag (altså mandag) i ugen. Når jeg har den er det jo ikke noget problem at beregne de andre datoer.

Håber I har en løsning til dette lille problem.
Avatar billede fennec Nybegynder
03. maj 2004 - 13:37 #1
hvis du kun har ugenummeret er det umuligt. Du skal som min. også have året...
Avatar billede carparknorth Nybegynder
03. maj 2004 - 13:45 #2
nåja... selvfølgelig.. jeg har også året.. jeg glemte bare at skrive.. min fejl.. :)
Avatar billede fennec Nybegynder
03. maj 2004 - 13:52 #3
Så skal vi have bestemt hvilket ugenummer format der skal bruges. Der findes 3 måder til at bestemme hvornår ugenummerne begynder...

1. den uge hvor 1. jan er i.
2. den uge som har mindst 4 dage i det nye år.
3. den uge hvor alle dage er i det nye år.
Avatar billede carparknorth Nybegynder
03. maj 2004 - 15:09 #4
det er nr. 2...
Avatar billede carparknorth Nybegynder
03. maj 2004 - 15:10 #5
sDate = date 'ændres senere når der kommer en specifik dato.
Ugenr = DatePart("ww", sDate, 2, vbFirstFourDays)
Avatar billede nute Nybegynder
03. maj 2004 - 15:12 #6
<%@ language="vbscript" %>
<%
if( Request("action") = "calc" ) then
   
    Dim strWeekDays : strWeekDays = "Søndag,Mandag,Tirsdag,Onsdag,Torsdag,Fredag,Lørdag"
    Dim arrWeekDays : arrWeekDays = SPLIT( strWeekDays,"," )
    Dim strYear : strYear = "2004"
    Dim strWeek : strWeek = "9"
    Dim objDate : objDate = DateSerial( strYear, "01", "01" )
    Dim intFirstWeekDay : intFirstWeekDay =  WeekDay( objDate, 3 )
    Dim objNewDate : objNewDate = DateAdd( "ww", CInt( strWeek ) - 1, objDate )
    Dim intDayOfWeek : intDayOfWeek = WeekDay( objNewDate, 2 )
    Dim objStartDate : objStartDate = DateAdd( "d", -( intFirstWeekDay ), objNewDate )
    Dim objEndDate : objEndDate = DateAdd( "d", ( 7 - intDayOfWeek ), objNewDate )
    Response.Write( "Uge " & strWeek & "/" & strYear & " går fra " & arrWeekDays( WeekDay( objStartDate ) - 1 ) & " den " & objStartDate  )
    Response.Write( " til " & arrWeekDays( WeekDay( objEndDate ) - 1 ) & " den " & objEndDate  )
end if
%>
<html>
<body>
<form name="frm">
Uge: <input type="text" name="month"><br>
År: <input type="text" name="year"><br>
<input type="hidden" name="action" value="calc"><br>
<input type="submit" value="beregn">
</form>
</body>
</html>
Avatar billede carparknorth Nybegynder
03. maj 2004 - 15:17 #7
tak skal du have nute... endnu en gang har du hjælpet mig... læg et svar...
Avatar billede nute Nybegynder
03. maj 2004 - 15:19 #8
fino :)
Avatar billede nute Nybegynder
03. maj 2004 - 15:23 #9
- takker -
Avatar billede carparknorth Nybegynder
03. maj 2004 - 15:35 #10
nute -> http://www.eksperten.dk/spm/495322
håber du kan hjælpe..
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester