Tagarchief: Weekdag

Gantt-grafiek



Henry Laurence Gantt ontwikkelde de Gantt-grafiek rond 1910.
In zijn werk als werktuigkundig ingenieur, managementconsultant en bedrijfsadviseur werd de Gantt-grafiek gebruikt als een visueel hulpmiddel om de planning en voortgang van een project te laten zien. In die tijd werd dit gezien als een opzienbarende innovatie.

Voor (complexe) Gantt-grafieken worden veelal specialistische (project-)programma’s gebruikt, maar voor het gewone werk kunnen we met Excel ook al aardig vooruit.

Aan de hand van een simpele project-opzet zullen we 2 mogelijkheden voor een Gantt-grafiek bekijken.

Project-data

Hiernaast ziet u de gegevens van een fictief project (zie het tabblad ProjData in het Voorbeeldbestand).
Per stap en substap leggen we een volgnummer vast, samen met een omschrijving, een begindatum en het aantal geplande dagen dat de stap duurt (alleen op het laagste niveau).

Uiteraard beïnvloeden de stappen elkaar. In het voorbeeld zijn dat de volgende zaken:

  1. de startdatum van het project leggen we vast in cel D3
  2. in cel D4 komt de echte startdatum van de eerste hoofd-stap, de Brainstorm-sessies. We gebruiken de functie WEEKDAG om te controleren of D3 niet in een weekend valt. Als D3 een zondag is dan is het resultaat van WEEKDAG een 1, bij maandag een 2 etc.
  3. er zijn 2 brainstormsessies, die parallel plaats vinden. De startdatums daarvan (cellen D5 en D6) zijn gelijk aan D4.
  4. In E5 en E6 ligt vast hoeveel dagen deze sessies in beslag nemen.
  5. de einddatum van deze 2 substappen wordt bepaald met de functie WERKDAG. Zo staat in F5 de formule =WERKDAG(D5;E5-1)
    Deze functie bepaalt de einddatum door bij de startdatum (D5) een aantal dagen op te tellen (E5); de functie telt dagen van het weekend daarbij niet mee.
    Omdat op de startdatum ook al gewerkt wordt, verlagen we het aantal te werken dagen met 1.
  6. De afronding van de brainstorm vindt plaats op de eerste werkdag nadat de laatste sessie klaar is; in cel D7 staat daarom de formule =WERKDAG(MAX(F5:F6);1)
  7. De ontwerpfase begint als de brainstorm voorbij is; eerst het Functioneel Ontwerp, daarna het Technisch Ontwerp en vervolgens een Eindoverleg om alle details door te nemen.
    De opzet van de cellen D8:D11 mag dan ook duidelijk zijn.
  8. De Bouw start na de afronding van het Ontwerp (cellen D12 en D13).
  9. Deel2 van de bouw kan pas beginnen na afronding van Deel1 (cel D14=WERKDAG(F13;1)).
  10. Wel kan de bouw van de Schil parallel aan de andere bouwactiviteiten plaats vinden (cel D15 is gelijk aan D12).
  11. De daadwerkelijke oplevering vindt plaats nadat de laatste bouwactiviteit is afgerond; in D16 staat de formule =WERKDAG(MAX(F13:F15);1)

NB de functie WERKDAG kent nog een derde parameter, Vakantiedagen. Leg ergens in uw werkmap een overzicht vast van die dagen, dat er voor het project niet gewerkt kan worden en voeg deze reeks als derde parameter toe aan alle WERKDAG-functies (zie een voorbeeld op het tabblad ProjData).

Gantt-grafiek 1

Op basis van de gegevens uit het tabblad ProjData van het Voorbeeldbestand gaan we nu een grafiek maken. Wel hebben we dan nog 2 hulpkolommen nodig:

  • in kolom G komt de startdatum van de betreffende stap minus 1 (waarom dat zullen we hieronder zien; datums zijn voor Excel gewoon getallen dus in G3 komt de formule =D3-1)
  • in kolom H komt het verschil in kalenderdagen tussen de start- en einddatum van iedere stap (in H3 staat dan de formule =F3-D3+1; met 1 gecorrigeerd omdat de startdatum ook meedoet)

Dan kunnen we de grafiek gaan opbouwen:

  1. selecteer de cellen G3:G16
  2. kies in de menutab Invoegen in het blok Grafieken de optie Staaf
  3. en dan bij 2D-staaf de 2e optie (Gestapelde staaf). Het eerste gedeelte van de grafiek is klaar.
  4. selecteer de cellen H3:H16 en Kopieer deze (Ctrl-C)
  5. klik ergens in de grafiek van punt 3 en Plak (Ctrl-V)
  6. de legenda kan weg: klik er op en druk op Delete
  7. de basis-as moet nog aangepast worden:
    * klik met de rechtermuisknop ergens in de grafiek
    * kies de optie Gegevens selecteren
    * klik op de button Bewerken onder Horizontale aslabels
    * selecteer de cellen B4:C16 en klik op OK
    * nog een keer OK om bij de grafiek terug te komen
  8. eigenlijk willen we alleen de tweede staaf zien; de eerste geeft het verloop tot aan de startdatum weer (vandaar de minus 1 in kolom G):
    * klik rechts op één van de staven, die ‘weg’ moeten
    * kies de optie Gegevensreeks opmaken
    * kies onder Opvulling de optie Geen opvulling en dan de button Sluiten
  9. Nog één aanpassing. De volgorde van de stappen is (voor ons) niet logisch:
    * klik rechts op de Categorie-as
    * kies de optie As opmaken
    * vink de optie Categorieën in omgekeerde volgorde aan en klik op de button Sluiten

In het tabblad Gantt1 ziet u het resultaat van bovenstaande exercitie (met nog enkele aanpassingen, die de grafiek overzichtelijker maken).

NB kijk wat er gebeurt, als je in cel D3 van het tabblad ProjData een andere startdatum voor het project invoert.

Gantt-grafiek 2

Deze Gantt-grafiek is op een heel andere manier tot stand gekomen (het is geen echte grafiek, maar een inkleuring van Excel-cellen; zie tabblad Gantt2 van het Voorbeeldbestand):

  1. het ‘blauwe’ blok zijn allemaal verwijzingen naar het tabblad ProjData; bijvoorbeeld in cel B6 staat de formule =ProjData!B4
  2. in cel H4 staat de formule =D5-5, zodat de ‘grafiek’ niet exact op de startdatum begint, maar 5 dagen eerder.
  3. in I4 staat de volgende dag =H4+1; deze formule is zover naar rechts gekopieerd, dat de einddatum van het project in de rij voorkomt.
  4. in H3 hebben we de Maand zichtbaar gemaakt met de formule =Tekst(H4,”mmm”) en deze formule is ook naar rechts gekopieerd
  5. in regel 2 bepalen we op een vergelijkbare manier het Jaar

Alle overige effecten (verticale lijnen, gekleurde cellen en het al dat niet zichtbaar maken van het jaar en de maand) zijn met behulp van Voorwaardelijke opmaak geïmplementeerd (LET OP deze optie is niet direct beschikbaar; om ongewilde wijzigingen te voorkomen is  het werkblad Gantt2 beveiligd. Verwijder de beveiliging via de menutab Controleren en dan de optie Beveiliging blad opheffen (geen wachtwoord vereist). Vergeet niet daarna de beveiliging weer aan te brengen!):

  1. als de tekst in regel 3 verandert (H$3<>G$3), dan komt er een rand aan de linkerkant van de cellen in de regels 2 t/m 18
  2. als de inhoud van een cel in de 2e en 3e regel gelijk is aan de cel links daarvan (H2=G2) dan krijgt de tekst in die cel een witte kleur en is dus niet meer zichtbaar
  3. de cellen in de regels 4 t/m 18 krijgen een rode linker- en rechterrand als de inhoud van de 4e regel gelijk is aan de datum van vandaag (H$4=VANDAAG()).
  4. ook krijgen de cellen in de regels 4 t/m 18 een groenige achtergrond als de datum in de 4e regel een weekend voorstelt (WEEKDAG(H$4;2)>5; de parameter 2 geeft aan dat de week op een maandag begint)
  5. de cellen in de regels 5 t/m 18 krijgen een bruinige achtergrond als de datum in de 4e regel groter of gelijk is aan de startdatum in kolom D EN de datum in de 4e regel kleiner of gelijk is aan de datum in de kolom E.

Welke methode heeft de voorkeur?

Mijn persoonlijke voorkeur gaat naar de 2e methode uit. Hierbij is ieder facet van de ‘grafiek’ in te stellen.

Dit is meteen ook het grootste nadeel van deze methode. Dus heb je snel een grafiek nodig, gebruik dan methode 1.

Laat in een reactie hieronder weten, welke methode u prefereert.


Wil je op de hoogte gebracht worden, wanneer er weer een nieuw item aan Tips & trucs is toegevoegd:

Trend-analyse

Ik was deze week nog eens naar Google-analytics aan het kijken hoe het met de bezoekersaantallen van G-Info gaat.

Er zit nog steeds een stijgende lijn in; altijd leuk!

Wel wat vreemde uitschieters:

  • eind april/begin mei 2015 heeft Google problemen gehad en is er niets geturfd
  • juli en aug van ieder jaar vertoont een dip; waarschijnlijk hebben mensen dan wat anders te doen
  • ook bij de dips van eind december kan ik me wat voorstellen
  • bij nadere bestudering blijken alle punten aan de onderkant op zaterdag en zondag te vallen
  • en de pieken naar boven vallen samen met de momenten dat ik een Nieuwsbrief uitstuur met de aankondiging dat er een nieuw artikel op de site is verschenen.

Maar laten we eens kijken hoe we de trend kunnen analyseren.

Trendlijn-1

Op basis van de gegevens van Google heb ik bovenstaande grafiek gemaakt (je kunt de data uit Analytics eenvoudig exporteren naar Excel):

  1. in het Voorbeeldbestand staan op het tabblad Gegevensset de aantallen bezoekers per dag (beter gezegd de aantallen sessies).
    Daar heb ik ‘natuurlijk’ direct een Excel-tabel van gemaakt (zie het artikel over de 10 voordelen van een tabel en Tabellen deel 2). De naam daarvan is Tabel1.
  2. selecteer de gegevens uit de 2 kolommen door de bovenkant van de kolommen aan te wijzen (de cursor is dan een zwart-pijltje naar beneden; de linker-muis-toets ingedrukt houden).
  3. kies in de menubalk de optie Invoegen/Grafieken/Lijn
  4. het resultaat vindt u terug in het tabblad Graf

In de voorbeeldgrafiek heb ik Excel ook een trendlijn laten toevoegen:

  1. klik ergens met de rechtermuisknop op de grafiek en kies de optie Trendlijn toevoegen
  2. laten we het simpel houden en voor een rechte lijn (de optie Lineair) kiezen
  3. vink ook de 2 onderste opties aan: Vergelijking en R-kwadraat

Excel heeft een mooie (stijgende) lijn getekend; de wiskundige formule die daar bij hoort is
y = 0,0956x – 3998,4

Het getal voor de x is de richtingscoëfficiënt (RC): hoeveel verandert de lijn als x (in dit geval de dag) met 1 toeneemt (dus ruwweg iedere 10 dagen komt er 1 bezoeker meer).
Het andere getal (-3998,4; het snijpunt met de y-as) geeft het aantal bezoekers weer als x gelijk is aan 0 (nul).

NB1 Omdat op de x-as datums staan en voor Excel een datum niets anders is dan het aantal dagen na 1-1-1900, zou het aantal bezoekers op die dag-nul dus flink negatief zijn geweest. De lijn naar het verleden doortrekken is dus onzinnig.

NB2 voor de liefhebbers: Excel gebruikt voor het bepalen van de lijn de zogenaamde kleinste-kwadratenmethode.

NB3 R² (R-kwadraat) is de zogenaamde determinatiecoëfficiënt. Deze geeft aan welk gedeelte van de variatie in de ene variabele door de andere wordt verklaard.
Ofwel: hoe ´betrouwbaar´ is de trendlijn. Is de R² kleiner dan 0,5 dan is het verband zwak tot matig, ligt die tussen 0,5 en 0,75 dan is het verband sterk en anders zeer sterk.

Hoeveel bezoekers mag G-Info op basis van deze trendlijn over een jaar verwachten? Als iedere 10 dagen er 1 extra bezoek bij komt dan zouden er over 365 dagen ongeveer 36 meer moeten zijn dan nu; dus ipv gemiddeld 95 zouden er dat ongeveer 130 zijn.
Dit kunnen we ook makkelijk grafisch laten zien:

  1. klik met de rechtermuisknop op de trendlijn in de grafiek
  2. kies Trendlijn opmaken
  3. en bij Voorspelling/Vooruit vullen we 365 in

Richting, Snijpunt, R.kwadraat en Lijnsch

Om in Excel met de trend te kunnen rekenen moeten we de richtingscoëfficiënt en het snijpunt met de y-as exact weten; we hebben niet genoeg aan een formule in de grafiek.

Uiteraard zijn daar functies voor (zie het tabblad Gegevensset in het Voorbeeldbestand):

  1. in cel H2 willen we de RC plaatsen.
    * tik in =Richting(
    * klik op de bovenrand van Sessies in kolom C (de y-waarden)
    * tik in ;
    * klik op de bovenrand van Dagindex in kolom B (de x-waarden)
    * druk op Enter (Excel zal automatisch de sluithaak van de formule toevoegen)
  2. in H3 is op dezelfde manier de functie SNIJPUNT ingevoerd
  3. en in H4 de functie R.KWADRAAT (denk aan de punt na de R)

Voor de liefhebbers: Excel kent nog een andere functie; deze levert meer statistische resultaten op, LIJNSCH.

In het kort (zie het tabblad Gegevensset in het Voorbeeldbestand):

  1. selecteer 6 lege cellen, 2 kolommen en 3 regels  (in het voorbeeld G12:H14)
  2. in de eerste cel komt de volgende formule:
    =LIJNSCH(Tabel1[Sessies];Tabel1[Dagindex];WAAR;WAAR)
    De y- en x-waarden zijn de bekende kolommen uit de tabel met Google-data.
  3. druk nu niet op Enter, maar Ctrl-Shift-Enter (de zogenaamde CSE-invoer)

De betekenis van de 6 cellen heb ik in de kolommen er naast aangegeven; de cellen G12:H14 hebben corresponderende namen gekregen, zodat formules die er naar verwijzen beter leesbaar zijn.

NB De 2 ‘boven’ de R krijg je als volgt: selecteer in de formulebalk de 2, klik Ctrl-1 (de sneltoets voor Celeigenschappen) en kies de optie Superscript. De m, b en y achter SD hebben de eigenschap Subscript gekregen.

LET OP Lijnsch is een zogenaamde array- of matrix-functie. Het resultaat bestaat niet uit 1 waarde maar uit meerdere, vandaar dat die met CSE wordt ingevoerd. Alle cellen bevatten dezelfde functie, omgeven door accolades.

NB Lijnsch levert meer dan 6 resultaten terug; probeer zelf maar uit door in de eerste stap meer kolommen en regels te selecteren.

De resultaten van bovenstaande functies kunnen we nu gebruiken om voorspellingen voor de toekomst te genereren (zie het tabblad Gegevensset in het Voorbeeldbestand).

Trendlijn-2

Omdat de bezoekersaantallen in de weekenden heel anders zijn dan op werkdagen, heb ik voor een nadere analyse op het tabblad Gegevensset in het Voorbeeldbestand nog een kolom toegevoegd:
=KIEZEN(WEEKDAG([@Dagindex];2);”ma”;”di”;”wo”;”do”;”vr”;”za”;”zo”)

Ofwel: bepaal de Weekdag van de corresponderende datum in kolom B (Dagindex; we willen dat de week op maandag begint, vandaar de parameter 2). Aangezien deze functie volgnummers oplevert (een maandag is 1, dinsdag 2 etc), heb ik de nummers nog vertaald in teksten mbv de functie Kiezen.

Op basis van deze tabel heb ik een draaitabel gemaakt (zie het tabblad Draai in het Voorbeeldbestand).
Door het veld Weekdag in het Rapportfilter te plaatsen kunnen we snel een overzicht per afzonderlijke dag maken.
Om ook analyses per jaar, kwartaal of maand te kunnen maken heb ik de datums in het veld Dagindex gegroepeerd (zie Groeperen in een draaitabel).

Nog een paar stappen en we kunnen met de resultaten gaan ‘spelen’:

  1. selecteer een cel in de draaitabel
  2. in de menutab Hulpmiddelen voor draaitabellen kiezen we het tabblad Opties
  3. klik dan op de optie Draaigrafiek in het blok Extra
  4. kies een Lijngrafiek en klik OK
  5. voeg een Trendlijn toe, inclusief Vergelijking en R-kwadraat

Na wat lay-outen en het toevoegen van 2 slicers (zie Slicers in Excel) krijgen we een resultaat zoals weergegeven in het tabblad DrGraf in het Voorbeeldbestand.

LET OP de b in de vergelijking van de trendlijn gebruikt voor x=0 niet meer de datum 1-1-1900, maar de eerste datum in de betreffende draaitabel.

Wanneer we in de Slicer Weekdag alleen de maandag kiezen (klikken op de button ma) dan zien we dat de R² al veel beter wordt (0,6381).

LET OP de m in de vergelijking van de trendlijn geeft nu niet de verandering per dag aan, maar de verandering naar de volgende maandag, dus na 1 week.
Wil je de trendlijn 1 jaar vooruit laten ‘kijken’, tik bij Voorspelling/Vooruit dan ook geen 365, maar 52 in (dus over 1 jaar 160 bezoekers op maandag?).

Wil je het resultaat over alle werkdagen zien:

  1. kies in de Slicer Weekdag de button ma
  2. houd Shift ingedrukt en klik op vr
  3. laat Shift los
  4. de draaitabel, draaigrafiek en trendlijn passen zich automatisch aan

Analyse van de jaren laat zien (gebruik de betreffende Slicer), dat de trendlijn voor 2015 ´betrouwbaarder´ is dan die van 2016. De resultaten van vorig jaar worden zwaar beïnvloed door de dips in vakantie-periodes.


Wil je op de hoogte gebracht worden, wanneer er weer een nieuw item aan Tips & trucs is toegevoegd:

Weekdagen en weeknummers

Kalender-2016-LandscapeEén van de eerste artikelen op de site van G-Info ging over datums en de mogelijkheden van de diverse opmaak-opties (klik hier voor het betreffende artikel).

Vorige week kreeg ik een vraag over weekdagen en weeknummers in Access. Toen bleek, dat het probleem niet met opmaak was op te lossen, viel het me weer op, hoe ingewikkeld het kan zijn om dit soort vraagstukken met behulp van formules te tackelen.
Ook de (soms) grote verschillen tussen Excel en Access maken het er niet makkelijker op (hoezo, allebei een onderdeel van Microsoft Office!) .

Daarom maar eens wat mogelijkheden (en onmogelijkheden) op een rijtje gezet.

Opmaak in Excel

Zoals gezegd heb ik daar in een eerder artikel al eens over geschreven.
KalenderIn het Voorbeeldbestand heb ik een overzicht gemaakt met de dagen van de laatste week van 2016 en de eerste 2 van 2016.
De datums staan in kolom F; in de kolommen G t/m J staan verwijzingen naar de dagen in kolom F, maar met behulp van celopmaak (Ctrl-1 indrukken) is de lay-out van de cellen veranderd.

Voordeel hiervan is, dat makkelijk en snel de opmaak aangepast kan worden aan je wensen.
Nadeel is echter, dat je niet rechtstreeks formules of filters op deze cellen kunt los laten; de inhoud van die cellen blijft een datum (intern voor Excel een getal). Ook is het niet mogelijk om op deze cellen een Voorwaardelijke opmaak toe te passen.

NB wanneer je een Filter aanbrengt op het overzicht zul je zien, dat de filtermogelijkheden voor de kolommen F t/m J allemaal hetzelfde zijn: Excel ziet, dat het datums betreft en geeft daarom de mogelijkheden om te filteren op jaar, maand of dag. Het is NIET mogelijk om te filteren op bijvoorbeeld maandag.

Kalender2Experimenteer met de aangepaste opmaak via Celeigenschappen (Ctrl-1). Gebruik combinaties van de letters d, m en j; 1 letter, 2 letters etc. Het resultaat zie je direct in het vak Voorbeeld.

Datum-formules in Excel

Wil je kunnen rekenen, filteren, sorteren met de diverse onderdelen van een datum dan voldoet de opmaak niet meer. Je zult dan formules moeten gebruiken, waarmee de datum ‘ontleed’ wordt.

In het Voorbeeldbestand zijn in de kolommen K, L en M formules gebruikt om het jaar, de maand en de dag van een datum op te halen; in cel K4 bijvoorbeeld staat de formule =JAAR(F4).

Niets bijzonders, handig, recht-toe-recht-aan.
Willen we echter de weekdag ophalen (is het een maandag, dinsdag?) , dan blijkt er in Excel geen functie te zijn, die dat rechtsreeks oplevert; wel kunnen we het volgnummer van de dag in de week opvragen met de functie Weekdag.
Daar zit echter een addertje onder het gras: er is in de wereld geen overeenstemming over welk nummer bijvoorbeeld de maandag moet krijgen: 1 zoals in Europa gebruikelijk is of moet het 2 zijn (een nieuwe week begint op zondag)?
Aan de functie Weekdag moet dus altijd kenbaar worden gemaakt wat de eerste dag van de week is (als je dat niet meegeeft, dan wordt de standaard genomen en krijgt zondag volgnummer 1).
In cel N4 staat de formule =WEEKDAG(F4;KzWkDag)

Kalender3

Er wordt dus gezocht naar de weekdag, die hoort bij de datum in cel F4, waarbij als Type_getal de waarde 2 wordt meegegeven (maandag krijgt volgnummer 1).
Type_getal verwijst naar de cel met de naam KzWkDag (cel C3). Via Gegevensvalidatie kunnen daar alleen de voor deze functie toegestane waarden 1, 2, 3 en 11 t/m 17 ingevoerd worden.
Met VERT.ZOEKEN is in cel D3 te zien wat een bepaalde waarde inhoudt. Op het tabblad Parameters is de bron voor de Gegevensvalidatie en het verticaal zoeken te vinden in de kolommen B en C.

NB met een formule kunnen we dus het volgnummer van een weekdag afleiden, willen we echter een omschrijving dan wordt het iets ingewikkelder.
In cel Q4 staat een voorbeeld:
=KIEZEN(N4;”ma”;”di”;”wo”;”do”;”vr”;”za”;”zo”)
Let wel op: de volgorde van de dagen is afhankelijk van het Type_getal, dat in cel N4 is gebruikt!

Met opmaak is het niet mogelijk om in Excel het weeknummer te zien; wel is daar een functie voor. In het Voorbeeldbestand wordt die in kolom O gebruikt.
In cel O4 komt dan de formule =WEEKNUMMER(F4;KzWkNr)

Ook deze functie kent een 2e paramater (het Type_resultaat). Welke keuze hier gemaakt moet worden is nog iets ingewikkelder dan bij Weekdag. Want niet alleen is het van belang op welke dag een nieuwe week begint, ook moeten we aangeven wanneer we met weeknummer 1 beginnen.
Voor dat laatste onderscheidt Excel 2 systemen: bij Systeem 1 is Nieuwjaar het begin van week 1, bij Systeem 2 (het Europese systeem) begint week 1 met die week, waarin de eerste donderdag valt (en de week begint dan automatisch op maandag).

Om Systeem 2 te kiezen moet als 2e paramater voor Weeknummer het getal 21 meegegeven worden.

Opmaak in Access

Net als in Excel kunnen we in Access de datum “in stukken knippen” door een opmaak daaraan mee te geven.
In een query, die gebaseerd is op een tabel met een veld Datum, kunnen we bijvoorbeeld een nieuw veld toevoegen (met de naam JrF) om het jaar af te leiden:
JrF: Format([datum];”yyyy”)

LET OP Access verwacht Engelse functienamen en ook de Engelse afkorting voor het jaar.

We kunnen ook minder letters aan de functie meegeven, maar het resultaat is soms iets anders dan in Excel:
y: dit levert het volgnummer van de dag in het jaar
yy: het jaar in 2 cijfers
yyy: het jaar in 2 cijfers en direct daarachter het volgnummer van de dag in het jaar (dus een combinatie van yy en y)

Voor het maandnummer kan een vergelijkbare formule gebruikt worden:
MndF: Format([datum];”m”)
mm: het maandnummer altijd in 2 cijfers
mmm: de afkorting voor de maand (bijvoorbeeld jan)
mmmm: een volledige maand-aanduiding (bijvoorbeeld januari)

Voor de dag van de maand gebruiken we dan:
DagF: Format([datum];”d”)
dd: het dagnummer altijd in 2 cijfers
ddd: de afkorting voor de dag van de week (bijvoorbeeld ma)
dddd: een volledige dag-aanduiding (bijvoorbeeld maandag)

Binnen Access is het op deze manier ook mogelijk om het kwartaalnummer automatisch te genereren:
KwF: Format([datum];”q”)

Ook kunnen we de w als parameter gebruiken, maar ook nu dienen we nog extra parameters mee te geven:
WkF: Format([datum];”w”;2)
Deze formule levert het volgnummer van de dag in de week op. Maar net als in Excel moeten we dan wel opgeven op welke dag een nieuwe week begint. Geven we als 3e parameter een 0 (nul) mee, dan worden systeeminstellingen gebruikt, 1 dan begint de week op zondag etc.

Als laatste nog:
Wk2F: Format([datum];”ww”;2;2)
Dit levert het weeknummer in het jaar; net als in Excel is het wel van belang welk systeem daarbij gebruikt moet worden.
Als de 4e parameter 0 (nul) is dan worden de systeeminstellingen gebruikt, 1 dan begint de eerste week op Nieuwjaar, 2 dan is de eerste week afhankelijk van de eerste donderdag en 3 dan is de eerste week die week, die volledig in het nieuwe jaar ligt.

LET OP de functie Format retourneert een tekst; wil je rekenen met de uitkomst hiervan neem dan de waarde van het resultaat: Val(Format([datum];”d”))

Datum-formules in Access

Willen we direct rekenen met de dagen, maanden, weken etc (zonder gebruik te maken van de Val-functie) dan kent Access nog de functie DatePart.

Als we bijvoorbeeld in een query als veld opgeven
JrNr: DatePart([datum];”yyyy”)
dan resulteert dit in een getal met 4 cijfers, dat het jaar aangeeft.

Alle instellingen, die hiervoor bij Access-opmaak zijn toegelicht, zijn hier toepasbaar.
Dus bijvoorbeeld DatePart([datum];”ww”;1;2) levert het weeknummer (als getal) op, waarbij een week begint op zondag en de eerste donderdag bepalend is voor de weeknummer 1.


Wil je op de hoogte gebracht worden, wanneer er weer een nieuw item aan Tips & trucs is toegevoegd: