• 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.

Foutcontrole op invoer

Status
Niet open voor verdere reacties.

wieter

Terugkerende gebruiker
Lid geworden
26 jun 2009
Berichten
1.128
Ik ben een invoer controle aan het maken.
Best wel ingewikkeld.
Bij foute invoer wordt de cel rood gekleurd.
Maar bij nachtwerk loopt het fout.
In het originele bestand worden de uren verwerkt op de aanvangsdatum van het werk.
In de bijlage wordt het probleem geschetst.

Bekijk bijlage wieter.xlsm
 
Gebruik data validatie voor invoercontrole vooraf.
 
Laatst bewerkt:
wieter, je hebt op rij 11 staan van 3:00 tot 5:00
deze tijden vallen die op 21-11-2014 of op de volgende dag?
 
@Sylvester
Ja die uren vallen op de volgende dag.
De berekening van de uren gebeurt op de rij van de aanvangstijd.
 
dus de tijden behoren op volgorde te komen van laag naar hoog??
dat houd in dat als je begint van 8:00 tot 20:00 en rechts daarvan schrijf je van 5:00 tot 7:00 ,
dan is van 5:00 tot 7:00 de volgende dag.
waarom noteer je dat niet bij de volgende dag?
 
@Sylvester
Ik ben van plan die controle toe te passen op het bestand dat jij vroeger maakte(Overuren met ort -- zie bijlage)
De berekening van de uren gebeurt op de rij van de aanvangstijd.
Vb. Je werkt van 21:00 tot 6:00 's anderendaags.
Dus met pauze geeft dat dan op 1 rij:
21:00 werktijd 22:30 pauze 23:00 werktijd 1:30 pauze 2:00 werktijd 2:30 enz...

Bekijk bijlage Overuren. met ort2(Nederlandse feestdagen).xlsm
 
wanneer moet het als fout gezien worden?
van 23:00 tot 1:00 is ok
van 22:00 tot 1:00 is ok
van 21:00 tot 1:00 is ok
van 20:00 tot 1:00 is ok ????
van 19:00 tot 1:00 is invoer fout????
van 18:00 tot 1:00 is invoer fout
enz
 
Probleem is dat er nergens een aanduiding is dat een invoer nachturen zijn of daguren.
Als er een foute invoer gebeurt tijdens de daguren, komt er een foutmelding (zover was ik al met de code = OK).
Maar als diezelfde invoer gebeurt tijdens de nachturen, is dat geen foute invoer meer.
Want tijdens de nacht wordt er zo wie zo ergens een lager uur ingevuld.
Excel weet niet dat het over nachturen gaat een geeft een foutmelding.
Voorbeeld:
Ik werk van 9:00 tot 17:00
Om 22:00 word ik opgeroepen voor een probleem, oplossing pas om 1:00 's nachts.
Al die werktijden worden op dezelfde lijn ingevuld. en er komt een foutmelding.
Na een ganse dag puzzelen, vermoed ik dat er geen oplossing is voor een efficiënte foutcontrole.
 
Als je bij de invoer na middernacht nu eens 24 optelt en celformaat op uu:mm houd?

Bij 2 uur 's nachts geef je een invoer van 26:00
Je ziet dan 2:00 in de cel staan en je kunt blijven controleren of de eindtijd groter is als de begin tijd.
 
Popipipo,
Ik heb jou idee omgezet in een stukje vba-code.
invoer 2:00 omzetten naar 2:00 + 24:00 en celeigenschappen op uu:mm
je ziet in de cel 2:00 , maar de achterliggende waarde is dan 26:00

Dit lijkt te werken. Ik ga nu morgen proberen dit verder uit te werken.
Bedankt voor de inbreng.
 
probeer deze eens: met voorwaardelijke opmaak en een function KloptTijd
er zit wel een grens in: 20:00
 

Bijlagen

  • wieter 2_1.xlsm
    17,6 KB · Weergaven: 27
Laatst bewerkt:
Sylvester,
Dat is geweldig.
Voorwaardelijke opmaak ja, maar die functie!!!!!
Hoe kom je erop!
Hartelijk bedankt.
Nu nog verwerken in het eigenlijke bestand.
Dank!!
 
die functie is maar een opzetje.
hij is nog niet helemaal klaar.
hij kijkt nog niet of hij overlap heeft met de vorige regel.(vorige dag)
ik denk dat er nog wel wat meer aan gesleuteld kan worden.

dat is het voordeel van zo'n functie je kan hem al implementeren. ook al werkt hij nog maar een beetje.
 
Klopt Sylvester, dat is nog een invoerfout waar ik niet aan gedacht had.
Ik kan maar met moeite jou functie analyseren, en dan nog maar gedeeltelijk.
Laat staan dat ik er aanpassingen aan zou doen.
Ik zie wel hoe ver jou bereidheid gaat.
Groeten
 
versie 2 met uitleg in de functie

test hem wel goed uit
hij kijkt ook naar vorige dag.

ik hoor graag waar het fout gaat.
 

Bijlagen

  • Urenreg. met ort1(Belgische feestdagen) versie 2.zip
    86,9 KB · Weergaven: 30
Prachtig denkwerk Sylvester.
Waar heb jij vba geleerd, op een andere planeet?
Ik durf het bijna niet meer vragen.
Met deze regel wordt bepaald vanaf welke tijd nachturen kunnen ingevoerd worden.
Code:
If T1 < TimeSerial(17, 0, 0) Then KloptTijd = False: Exit Function
Is het mogelijk dat men in een cel op blad2 deze tijd kan ingeven,
zodat men niet naar de functie moet als men die tijd wil wijzigen?
Ik kan je niet genoeg bedanken voor geleverde werk.
 
bedoel je zoiets?
 

Bijlagen

  • Urenreg. met ort1(Belgische feestdagen) versie 2met omslagpunt.zip
    88,2 KB · Weergaven: 29
Perfect Sylvester.
Ik heb het bestand uitvoerig getest op alle mogelijkheden.
Mijn dank is groot.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan