• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

datum automatisch bij dag en weeknummer

Status
Niet open voor verdere reacties.
Week 53 is van maandag 28 dec tm zondag 3 januari
Week 1 is van maandag 4 tm Zondag 10 januari

Maandag is dus dag 1 van de week en zondag is dag 7
Wat jij wilt is dat zondag de laatste dag van de week dag nr 1 is.
Dat kan dus niet.
 
het is vanwege deze formule die ik gekregen heb , dat ik dacht dat het op die manier werkt.

=ALS(EN(WEEKDAG(L1;1)=2;WEEKNUMMER(L1;21)=38);"8 uur 51";"")

als ik
=ALS(EN(WEEKDAG(L1;1)=1;WEEKNUMMER(L1;21)=39);"8 uur 51";"")
er van maak , komt het op zondag uit , en het maakt niet uit welke week je pakt

daarom had ik het idee met weeknummers de dag de datum automatisch neerzetten die ik in een programma wilde gebruiken

MVG mr0007
 
er is niet altijd een eenduidige relatie tussen (weeknummer weekdag en jaar) en de bijbehorende datum.
kijk maar een naar 2017 die heeft 2 oplossingen voor week 52 dag 7 : valt op 1 jan, en op 31 dec
 
Laatst bewerkt:
@sylv

Paus Gregorius zou zich in zijn graf omdraaien als je gelijk had:


Code:
Sub M_snb()
    MsgBox Format(DateSerial(2017, 1, 4) - Weekday(DateSerial(2017, 1, 4), 2) + 52 * 7, "dd-mm-yyyy")
End Sub
 
@sylv

Grapjas: ieder jaar heeft een week 12 of 20.
Maar bij ieder weeknummer hoort wel een ander jaar:

01-01-2017 is week 52 van het jaar 2016
31-12-2017 is week 52 van het jaar 2017

de eerste ISO-week van 2017 begint, zoals het hoort op maandag, op 02-01-2017, omdat 04-01-2017 in die week valt.

Voor meer over ISO-jaren zie mijn website.http://www.snb-vba.eu/VBA_ISO_weeknummer.html
 
Laatst bewerkt:
ok dus met de week dag jaar methode kun je nooit uitkomen op 1-1-2017
 
Laatst bewerkt:
Gelukkig niet, Gregorius' projekt was al duur genoeg...

Code:
Sub M_snb()
    MsgBox Format(DateSerial(2017, 1, 4) - Weekday(DateSerial(2017, 1, 4), 2) + 52 * 7, "dd-mm-yyyy")

    MsgBox Format(DateSerial(2016, 1, 4) - Weekday(DateSerial(2016, 1, 4), 2) + 52 * 7, "dd-mm-yyyy")
End Sub

De keuzen:

- of je beschouwt de eerste week van het jaar de week waarin tenminste 1 dag van het jaar valt (het U.S. systeem)
- of je beschouwt de eerste week van het jaar de week waarin minstens de helft+1 (=4 dagen: donderdag, vrijdag, zaterdag en zondag) van de week in het nieuwe jaar valt/vallen: het ISO-systeem.

Het eerste systeem kan ertoe leiden dat de eerste week van een jaar bestaat uit 6 dagen van een vorig jaar.
In het tweede systeem valt altijd het grootste gedeelte van de eerste week in het nieuwe jaar.
 
Laatst bewerkt:
mr0007, wist je dat met jouw methode om via de week dag en jaar de datum te bepalen het niet mogelijk is om,
1 jan 2016 en
2 jan 2016 en
3 jan 2016 , aan te geven?

er zijn nog wel meer datums die niet kunnen.
 
snb, in beide systemen krijg je een zelfde soort probleem :
het is niet mogelijk om alle datums te verkrijgen via het week dag jaar systeem.
 
Laatst bewerkt:
@sylv

Heb je mijn webpagina bekeken ?
Jouw stelling klopt nl. niet.
 
snb ik heb van de website al wel een jpg van gemaakt maar nog niet Bestudeerd, komt nog, leer ik weer wat bij, voor mijn probleem moet ik iets anders vinden.
bedankt voor de vele reactie's
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan