Ik ben een stukje aan het programmeren waarbij ik een tijdvak uit een datum probeer te halen. Je hebt 13 tijdvakken in 1 jaar, en een tijdvak begint op de 1e zaterdag van het jaar, en duurt per tijdvak 4 weken (dus tot de vrijdag).
Nu heb ik onderstaande gemaakt om een begin te maken:
Als ik dan ga testen met datums uit het jaar 2004 dan is de eerste zaterdag 3-1-2004, nu is het dus de bedoeling dat als de datum in datum.text kleiner is dan de eerste zaterdag van het jaar dat hij het laatste tijdvak van het jaar ervoor pakt. Dit heb ik op regel 5 geprobeerd te maken, maar deze geeft de Msgbox op de raarste momenten. Hij gaat bijvoorbeeld af van 10-2-04 t/m 2-3-04, en niet van 3-3-04 t/m 9-3-04. Ik dacht eerst dat dit kwam doordat misschien mijn systeem op Engelse notatie stond zodat de maanden en dagen werden omgedraaid, maar dit is niet het geval!
Hoe kan ik dit nu dat hij op de meest rare datums die melding geeft?
Overigens gaat de berekening voor de tijdvakken enzo wel goed!
Nu heb ik onderstaande gemaakt om een begin te maken:
Visual Basic:
1
2
3
4
5
6
7
8
| datum = CDate(datum.Text) Dat1Jan = "1-1-" & Year(datum) Dag1Jan = Weekday(Dat1Jan) Datum1eZat = DateAdd("d", 7 - Dag1Jan, Dat1Jan) If datum < Datum1eZat Then MsgBox "Test" AantalWeken = DateDiff("w", Datum1eZat, datum) weken.Text = AantalWeken Tijdvak.Text = Int(AantalWeken / 4) + 1 |
Als ik dan ga testen met datums uit het jaar 2004 dan is de eerste zaterdag 3-1-2004, nu is het dus de bedoeling dat als de datum in datum.text kleiner is dan de eerste zaterdag van het jaar dat hij het laatste tijdvak van het jaar ervoor pakt. Dit heb ik op regel 5 geprobeerd te maken, maar deze geeft de Msgbox op de raarste momenten. Hij gaat bijvoorbeeld af van 10-2-04 t/m 2-3-04, en niet van 3-3-04 t/m 9-3-04. Ik dacht eerst dat dit kwam doordat misschien mijn systeem op Engelse notatie stond zodat de maanden en dagen werden omgedraaid, maar dit is niet het geval!
Hoe kan ik dit nu dat hij op de meest rare datums die melding geeft?
Overigens gaat de berekening voor de tijdvakken enzo wel goed!
Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!