Aantal weekdagen in een bepaalde maand

27 oktober 2014 | onderwerpen: excel, vba, visual basic, functie

Op Twitter verscheen de volgende vraag: “Ik wil alle zaterdagen tellen in een bepaalde maand. Weet iemand hoe ik dat doe in #Excel?

Een zelfgeschreven functie biedt hier uitkomst. Die voorkomt dat je allerlei extra kolommen moet gaan toevoegen aan je Excel bestand.

De functie die je hieronder ziet telt het aantal weekdagen in de opgegeven maand.

Stel dat je in cel A2 het jaar hebt opgegeven, in cel B2 het maandnummer en in cel C2 het nummer van de weekdag dan luidt de formule:

=NDagInMaand(A2;B2;C2)

De zaterdag heeft in dit voorbeeld het nummer 7. Excel start de week standaard met de zondag.

Zet daarvoor in de het macroblad (Alt-F11) van het betreffende blad deze code:

Excel functie aantal weekdagen


Video aantal weekdagen

video functie ‘aantal weekdagen
klik voor vergroting


Public Function NDagInMaand(Jaar As Integer, Maand As Integer, Weekdag As Byte) As Byte

Dim x As Date

start = DateSerial(Jaar, Maand, 1)

If Maand = 12 Then
last = DateSerial(1 + Jaar, 1, 1)
Else
last = DateSerial(Jaar, 1 + Maand, 1)
End If

NDagInMaand = 0

For x = start To last – 1
If WeekDay(x, vbSunday) = Weekdag Then NDagInMaand = NDagInMaand + 1
Next x

End Function