Jag vill får reda på vilket datum det är den första dagen på året vecka 1. Jag har löst det så är det någon som är i behov av denna kod så är det bara att säga till... Hej. Sänd in en vecka och du år och du får ut vilken månad denna vecka tillhör.Datum första dagen i vecka 1 vid varje år.
Ex 2003 så ska det bli datum 30 december
Det finns ju FirstWeekOfYear och sen skulle det säkert gå med FirstDayOfWeek. Men får inte till det. Hoppas någon vill hjälpa mig med detta.
/Laban Sv: Datum första dagen i vecka 1 vid varje år.
Finns även ett program där du sänder in vilket år det är och en vecka så kommer det ut vilket datum som torsdagen i denna vecka är och vilken månad detta är...
Ha en bra/LabanSv: Datum första dagen i vecka 1 vid varje år.
Jag har inget behov av sådan kod just nu men skriva gärna ut den här.
Kanske man kan få ideér till något annat liknande problem...
//freddaSv: Datum första dagen i vecka 1 vid varje år.
<code>
Private Function f_month(ByVal year As String, ByVal week As String) As String
Dim MyDate, start_dag As Date
Dim antal_dagar, MyMonth As Integer
Dim monthname, value As String
start_dag = getDatum_i_vecka_1(year + "-01-01")'Funktion som sänder med datum till första januari
If week = 1 Then
antal_dagar = 0
Else
antal_dagar = (week - 1) * 7
End If
antal_dagar = antal_dagar + 3 'Kollar vilken dag Torsdag är därför lägger jag på 3 dagar
MyDate = DateAdd(DateInterval.Day, antal_dagar, start_dag)
'Mydate är torsdagen i denna vecka
MyMonth = Month(MyDate)
Dim ret As String
Select Case MyMonth
Case 1
monthname = " January"
Case 2
monthname = " February"
Case 3
monthname = " March"
Case 4
monthname = " April"
Case 5
monthname = " May"
Case 6
monthname = " June"
Case 7
monthname = " July"
Case 8
monthname = " August"
Case 9
monthname = " September"
Case 10
monthname = " October"
Case 11
monthname = " November"
Case 12
monthname = " December"
End Select
ret = MyMonth.ToString + "/" + year.ToString + monthname.ToString 'Ser lite konstigt ut men de är för detta ska in i databasen.
Return ret
End Function
Private Function getDatum_i_vecka_1(ByVal datum As Date) As Date 'första januari du får vilken dag vecka 1 börjar med
Dim dag As New Date()
Dim nr As Integer
Dim year As Integer = datum.Year
nr = DatePart("w", datum, vbUseSystemDayOfWeek, vbUseSystem)
Select Case nr
Case 1 'Måndag
Return CDate("'" & year & "' - 1 - 1")
Case 2 'Tisdag
year = year - 1
Return CDate("'" & year & "'-12-31")
Case 3 'Onsdag
year = year - 1
Return CDate("#" & year & "#-12-30")
Case 4 'Torsdag
year = year - 1
Return CDate("#" & year & "#-12-29")
Case 5 'Fredag
Return CDate("#" & year & "#-01-04")
Case 6 'Lördag
Return CDate("#" & year & "#-01-03")
Case 7 'Söndag
Return CDate("#" & year & "# - 01 - 02")
End Select
End Function
</code>
Säkert inte den mest trimmade koden om någon tycker att jag gör fel så får ni gärna rätta mig.