Finns det någon färdig funktion som kollar om ett "date" är en tid i sommartid eller en i vintertid. Enklast kanske är att kontrollera hur många timmar tiden skiljer från GMT tid. Tror det ska gå lätt att göra en sådan kontrol, har dock inte skrivit någon funktion för detta... Date har metoden IsDaylightSavingTime() som du kan använda. Tack Hej igen Ett tips: I övrigt är det bättre att internt alltid använda UTC (som har den fördelen att tiden *alltid* går framåt) och konvertera om det till lokal tid just före du visar.Sommar och vintertid
Jag ritar nämmerligen ut några knappar på skärmen ut efter vilken tid de representerar och detta blir fel när utgångsdatumet är på ena sidan sommartidsskiftet och knappens tid på andra.
Jag har en liten ide om hur jag ska skapa en sådan funktion men om det redan finns en är det ju
o-nödigt.
MVH
TorgnySv: Sommar och vintertid
Sv: Sommar och vintertid
<code>
Dim minTid As Date
minTid = Date.Now
If minTid.IsDaylightSavingTime() Then
'Sommartid
MsgBox("Sommartid")
Else
'Vintertid
MsgBox("Vintertid")
End If
</code>Sv:Sommar och vintertid
Jag kände att det borde finnas en sådan funktion.
Går denna funktion på EU-ländernas tid? för vad jag förstår så finns det många standarder, gamla och nya för olika länder.
Medan jag väntade på svar så skapade jag mej en egen fuction men den har problemet med att vissa tider inte existerar vissa dygn och finns två gånger andra (timmen som försvinner och kommer tillbaka).
Function Sommartid(ByVal Datum As Date) As Boolean
'Beräkna fram exakt datum för övergångarna
Dim Mars As Date
Dim Okt As Date
Mars = New System.DateTime(Datum.Year, 3, 31, 2, 0, 0)
Do Until Mars.DayOfWeek = DayOfWeek.Sunday
Mars = Mars.AddDays(-1)
Loop
Okt = New System.DateTime(Datum.Year, 10, 31, 3, 0, 0)
Do Until Okt.DayOfWeek = DayOfWeek.Sunday
Okt = Okt.AddDays(-1)
Loop
'kollen av om det sommar eller vinter tid
If Datum > Mars AndAlso Datum < Okt Then
Return True
Else
Return False
End If
End Function
Sv:Sommar och vintertid
Nu har jag försökt att testa din kod, men jag har inte denna function under date objektet (IsDaylightSavingTime() ).
kör du dot.net 2.0
Jag kör 1.1Sv: Sommar och vintertid