bepaalde dag van de week filteren

Status
Niet open voor verdere reacties.

cluster

Gebruiker
Lid geworden
18 dec 2021
Berichten
7
Hoe kan ik in een query aangeven dat bijvoorbeeld enkel de woensdagen moeten worden weergegeven uit een tabel?
heb al verschillende dingen geprobeerd maar krijg t niet gevonden, ben dan ook nog maar beginneling :rolleyes:
 
Het is, om dubbel werk te voorkomen, wel zo handig om dan ook aan te geven wát je al geprobeerd hebt. Schot voor de boeg, zoals ik het zou doen: extra veld in de query maken en met de functie Weekday de numerieke waarde van de weekdag berekenen. Op dat veld kun je dan simpel filteren.
 
dat heb ik inderdaad ook geprobeerd maar ik weet niet goed wat ik in het vereiste deel van 'datum' moet invullen

- daarnaast heb ik mijn korte datum veranderd naar een lange zodat ik bijvoorbeeld enkel de records met woensdag erin zou kunnen weergeven maar dit bied geen oplossing
- in excel waar mijn oorspronkelijke DB vandaan komt geprobeerd deze te splitsen in dag, maand en jaar maar krijg ik ook niet goed voor elkaar (veranderd jaartal bijvoorbeeld van 1978 naar 1900 en zo met alle records, geen idee waarom)
 
Laatst bewerkt:
Goedemorgen Cluster, welkom op het forum.

Het selecteren van records uit een tabel waarvan de datum een bepaalde dag in de week is doe je - zoals AccessGuru aangeeft - met de functie Weekday in veld van een query.

Voor mij zou mede bepalend zijn of de weekdag varieert of niet . Hieronder mijn toelichting en hoe ik het zou doen. Ik zou beginnen met inzichtelijk te maken wat de werkdag in het datumveld is. Dit kan natuurlijk ook met Lange datumnotatie, maar ik zou daarvoor een extra veld toevoegen om alleen de weekdag op te halen.

Daarvoor voeg ik een veld in de query toe en noem dat bijv Dag.
In de query ziet dat er dan als v volgt uit :
Dag: [Datum]
Bij dit veld zet je in de Selectie eigenschappen op het tabblad Algemeen als Notatie yyyy
Als je de query nu draait dan zie je dat 18 december 2021 een zaterdag is.

Maar wil je alleen de records waarvan de datum op een altijd op een woensdag valt. Een datumveld is een numeriek veld en daarom lukt het niet om in de criteria van het veld = "woensdag" te zetten

De weekdag is altijd dezelfde vaste dag
Voeg nu nog een veld aan de query toe en noem dat veld bijv Weekdag en zet hierin de functie Weekday

Dit wordt dan:
Weekdag:: Weekday([Datum];1)
In de criteria zet je 4

Waarom de 1 in de veldnaam en de 4 in de criteria??
Je moet eerst aangeven wat de eerste dag van de week is want op basis daarvan wordt het volgnummer van de weekdag bepaald. Ik heb ervoor gekozen dat zondag de 1e dag van de week is.

Ter info :
0 = de 1e dag van de week wordt bepaald op basis van de systeeminstellingen
Wil je dat niet dan kun je de eerste dag zelf bepalen op basis van :
1 = zondag,
2 = maandag,
3 = dinsdag enz. t/m 7 = zaterdag

Als ik ervoor kies dat zondag de 1e dag van de week is, dan zet ik dus 1 in het veld, en op basis daarvan wordt woensdag de 4e dag van de week
Zet daarom in de criteria = 4

Variëren de weekdagen zet dan bij criteria niet = 4 maar [Typ het volgnummer van de weekdag]

Zie voorbeeld, ik hoop dat dit je vraag oplost.
Weekdag.JPG
 
Dit is inderdaad wat ik gedaan heb, had de vraag gesteld op een ander forum (engelstaig wel) zij gaven mij dezelfde oplossing aan enkel gebruikten zij een komma in plaats van punt-komma daar zat ik een tijdje mee te knoeien natuurlijk. Is er geen algmene tutorial waarmee ik kan leren hoe ik expresies en dat soort zaken afsluit of open? Zoals wanneer gebruik ik [ ] of wanneer ( ) of dubbele aanhalingstekens of enkele.... t is dikwijls de opbouw waar ik mee lig te knoeien nu ben ik ondertussen weer verder aan prullen hoor, maar k wil het voornamelijk zelf wat uitvissen zo leer ik het meest uiteraard

dit is wat ik op het andere forum terug gepost heb toch alvast bedankt voor de hulp, had het nog maar net ontdekt hoor

[FONT=&amp]Finally got it the flaw was in the ' , ' behind [Datum] should be ' ; ' instead[/FONT]
[FONT=&amp]FIELD: Weekday([Datum];1)[/FONT]
[FONT=&amp]CRITERIA: 4[/FONT]
 
Laatst bewerkt:
Is er geen algmene tutorial waarmee ik kan leren hoe ik expresies en dat soort zaken afsluit of open?
Heb je niet nodig, als je op de juiste manier werkt. Zo kun je de meeste formules/functies prima maken met de Functie Opbouwen. Die zorgt ervoor dat je de juiste syntax gebruikt. Dan hoef je dus nooit na te denken of je een komma of een puntkomma moet gebruiken. In essentie is het overigens heel simpel: wat je gebruikt is afhankelijk van je landinstellingen. Hier dus een puntkomma, in Amerika een komma.

- Rechte haken ([])? Zelden nodig, alleen als er spaties in veldnamen/objectnamen zitten. Daar kan Access niet tegen.

- Ronde haken (())? Gebruik er zoveel als je wilt :). Kijk je wiskunde boek na wanneer je ze gebruikt. In VBA hebben de meeste functies parameters, en die staan dus altijd tussen de ronde haken.

- Aanhalingstekens? In beginsel geen verschil, maar dubbele zijn het veiligst. Probleem is alleen, dat het dubbele aanhalingsteken een systeemteken is om strings mee vast te leggen. Dus als je het dubbele teken zélf nodig hebt, moet je die twee keer typen. Dat maakt de leesbaarheid een beetje lastig. Daarom gebruiken veel mensen vaak een enkel aanhalingsteken. Maar daar kan je dus de teil mee ingaan, als het aanhalingsteken óók in het veld voorkomt, zoals in plaatsnamen. Dan loopt de functie fout. Zie onderstaande voorbeelden:

Code:
’Rotterdam’
Code:
’’s Gravenhage’
Code:
”’s Gravenhage”
De eerste en de derde werken perfect, de tweede geeft altijd een foutmelding. En daar heb je je algemene handleiding :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan