Zondagen tellen

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • rws1
  • Registratie: Oktober 2025
  • Laatst online: 18-10 17:46
in A1 staat begindatum 01/11/2025
in A2 staat einddatum 30/11/2025
Hoe kan ik het aantal zondagen tellen tussen begin- en einddatum?
Ik heb al vele formules tegengekomen maar geen enkele die werkt.

Dank bij voorbaat

...

Relevante software en hardware die ik gebruik
Excel 365

Wat ik al gevonden of geprobeerd heb
=SOMPRODUCT((D5:AH5>0)*(WEEKDAG(D5:AH5;2)<>7))

Alle reacties


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Wat zijn die D5:AH5? Klinkt alsof je op de goede weg bent: alle dagen uitschrijven en dan alleen de zondagen tellen.
Alternatief: aantal dagen tellen, delen door 7, paar if-then voor de twee randen. Niet vergeten te checken op schrikkeljaren.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

  • Wish
  • Registratie: Juni 2006
  • Laatst online: 21-10 17:20

Wish

ingwell

Zoiets?
code:
1
2
3
4
5
Count Sundays between two dates
Use the NETWORKDAYS.INTL function.
Provide the start date and end date as arguments.
For the weekend argument, use 11 to count only Sundays and exclude all other days.
The formula will be =NETWORKDAYS.INTL(start_date, end_date, 11)

No drama


Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Als je onderstaande macro in een module plaatst, kun je in de werkbladen deze functie gebruiken:
=Telzondagen(A1;A2) . Daarbij is ervan uitgegaan dat als begin- en/of einddatum ook een zondag zijn, die dagen moeten worden meegeteld. Moet dat niet (zoals in je vraag geformuleerd), dan moet je in de macro begin-en einddatum daarop nog controleren en die dag(en) - indien nodig - op het eindresultaat in mindering brengen.

code:
1
2
3
4
5
6
7
8
9
10
Public Function Telzondagen(A1 As Date, A2 As Date) As Long
Dim a As Long, x As Long
a = 0
For x = 0 To DateDiff("d", range("A1"), range("A2"))
If Weekday(DateAdd("d", x, range("A1"))) = 1 Then
a = a + 1
End If
Next x
Telzondagen = a
End Function

Acties:
  • +2 Henk 'm!

  • dixet
  • Registratie: Februari 2010
  • Laatst online: 22:46
Wish schreef op zaterdag 18 oktober 2025 @ 17:58:
Zoiets?
code:
1
2
3
4
5
Count Sundays between two dates
Use the NETWORKDAYS.INTL function.
Provide the start date and end date as arguments.
For the weekend argument, use 11 to count only Sundays and exclude all other days.
The formula will be =NETWORKDAYS.INTL(start_date, end_date, 11)
Het zou fijn zijn als je een ChatGPT antwoord ook even controleert. De functie NETWORKDAYS.INTL geeft het aantal werkdagen tussen twee datums. Met het weekend-argument op 11 zeg je dat hij alleen zondag moet rekenen als weekend. Deze functie geeft met deze instelling dus het aantal dagen dat géén zondag is terug. In het voorbeeld van TS dus 25, niet de gewenste 5.

Om het aantal zondagen te tellen neem je het totaal aantal dagen minus het aantal dat geen zondag is:
code:
1
=(A2-A1+1)-NETWORKDAYS.INTL(A1;A2;11)


Het eerste stukje [ (A2-A1+1) ] telt het totaal aantal dagen (inclusief begin en eindatum, net als NETWORKDAYS.INTL dat doet)
Het tweede deel [ NETWORKDAYS.INTL (A1;A2;11) ] telt het aantal dagen dat geen zondag is.
Door deze van elkaar af te trekken hou je het aantal zondagen over.

Acties:
  • +1 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Én rws1,
heb je 1 van de aangeboden oplossingen kunnen toepassen?
Pagina: 1