Rapporten met tijdscriteria.

Status
Niet open voor verdere reacties.

RadboudAKF

Gebruiker
Lid geworden
3 nov 2010
Berichten
219
Ik worstel met een paar rapportjes in ACCESS.

Ik heb een tabel met een aantal DATA. Het gaat om planningen voor een bepaalde produktie in de tijd. Het veld waar het om gaat is [Datum Planning]. Omdat er ver vooruit geplanned wordt wil ik dat in rapporten overzichtelijk maken.

Ik wil een rapport: (gebaseerd op de tabel met het veld Datum Planning)

1. met alle planningen in de HUIDIGE WEEK. (waarbij de zondag de eerste dag van de week is en zaterdag de laatste dag van de week).

2. Alle planningen per week in de huidige- en in de toekomstige maand.

Ik worstel met ermee hoe ik dit in een query of in het rapport definieer.

Wie kan mij een stukje op weg helpen...
 
Even voor het beeld: je wilt een rapport dat in blokken de verschillende weekplanningen laat zien, beginnend vanaf de huidige week?
 
Klopt...

Een blok begint dan met een kopje met "Week xx maandag ... t/m zondag ....."

En daaronder Maandag dd-mm-yyyy
Planningen van die dag.
 
De layout van de data is in dit geval niet zo heel boeiend; eerst de basis maar op orde maken zou ik zeggen :). Daarvoor moet je in de onderliggende query dus filteren op datums waarvan de week gelijk of groter is dan de huidige week. Omdat weken de vervelende gewoonte hebben om elk jaar terug te keren, schiet je weinig op met een filter alleen op weeknummer. Je moet dus filteren op datums die vanaf het begin van de huidige week liggen. Daarvoor kun je een functie gebruiken:

Code:
Function BeginVanWeek(Datum As Date)
    BeginVanWeek = Datum - WeekDay(Datum, vbSunday) + 1
End Function

Je veld [Datum Planning] filter je dan zo:
Code:
>=BeginVanWeek(Date())

Dat zou alle datums moeten laten zien vanaf de huidige week. Het weeknummer zelf kun je redelijk netjes maken met de functie
Code:
Weeknummer: CInt(Format([Datum Planning];"ww";2;2))

Daarmee heb je dan dus een query die alle datums vanaf de zondag van die week laat zien, met een weeknummer. Het rapport dat je maakt kun je vervolgens groeperen op Weeknummer zodat je alle records van een week bij elkaar ziet. Elke week krijgt dan een eigen koptekst zodat je de weken goed uit elkaar kunt houden. Wil je de Huidige week iets anders opmaken, dan kan dat door tekstvakken op te maken met Voorwaardelijke Opmaak. Die baseer je dan op een formule waarbij het weeknummer uit de query gelijk is aan het weeknummer van de huidige datum. Dan heb je namelijk de huidige week te pakken; alle andere weken liggen dan in de toekomst.
 
Criteria voor data

Mag ik hier ook nog een vraag stellen die hier zijdelings mee te maken heeft?

Ik vraag mij af of ik in een rapport (waarin bovenstaande codes worden verwerkt) ook nog zou kunnen aangeven of een bepaalde dag een FEESTDAG is of niet. Ik denk hierbij vooral aan de Christelijke Feestdagen (die internationaal gelden -kerst/pinksteren/pasen e.d.)

Of is dat heel gemakkelijk in een VBA-scriptje te verwerken bij het gebruik van de Agenda die ACCESS 'meelevert' bij het gebruik van een datumveld?

Als ik hiervoor een nieuwe vraag moet stellen dan hoor ik dat graag....

RadboudAKF
 
Feestdagen bepalen is nog best lastig, omdat je te maken hebt met dagen die vastliggen, zoals Kerst en 5 mei, en wisselend zoals Pasen en Hemelvaartsdag. Je hebt dus functies nodig die dat voor je uitzoeken. In de bijlage vind je functies die dat doen. Importeren in je VBA venster, en je kunt er over beschikken in de db.
 

Bijlagen

BAS-bestand

Wederom bedankt...

Weet even niet waarin ik dat BAS-bestand moet uitpakken. Kan ik dat in een module/procedure plakken?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan