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

Aantal minuten tellen

Status
Niet open voor verdere reacties.

Danielle22

Gebruiker
Lid geworden
8 mei 2007
Berichten
378
Hallo allemaal

Ik maak gebruik van een testsessie die een begin en een eindtijd heeft. Binnen deze sessie worden meerdere testen op uitgevoerd. Deze kunnen elkaar nooit overlappen. Elke test heeft het unieke nummer van de sessie (namelijk het SESSIE_ID)

Nu wil ik het volgende weten. Hoeveel minuten testtijd is uitgevoerd voor de sessie, binnen en aan het einde van de sessie. Ook wil ik dan weten hoeveel testen er uitgevoerd zijn binnen de testsessie (heb ik nu gedaan met aantal.als).

Ik heb een bijlage toegevoegd voor de duidelijkheid 

Wie kan mij hier verder mee helpen?

In ieder geval alvast heel erg bedankt voor de eventuele reacties.

Groetjes,

Danielle

Bekijk bijlage voorbeeld.xlsx
 
Ik begrijp het volgens mij niet helemaal. In je voorbeeld is SESSIE_ID 102 uitgewerkt (=ID_TESTSESSIE). Dan zie ik op de tab TESTEN 3x ID 102 terugkomen = 3 testen. Dat snap ik.

Maar ...
Op tab SESSIE staat een begin- en eindtijd (resp. 8:00 en 14:00). Op de tab TESTEN start de eerste test om 7:00 en loopt de laatste test door tot 14:30. Is dan testtijd voor sessie de tijd van 7:00 tot 8:00, en de testtijd van 14:00 tot 14:30 testtijd na sessie? En is dan testtijd binnen sessie gewoon (eindtijd-begintijd) x 60? Kunnen meer testen plaatsvinden vóór begintijd en/of ná eindtijd? Starten testen altijd vóór begintijd en eindigen ze altijd ná eindtijd? Staan testen altijd op volgorde? Worden testen altijd op dezelfde dag gestart als dat ze worden beëindigd?
 
Hoi Peter,

Heel erg bedankt voor je reactie.

p de tab TESTEN start de eerste test om 7:00 en loopt de laatste test door tot 14:30. Is dan testtijd voor sessie de tijd van 7:00 tot 8:00, en de testtijd van 14:00 tot 14:30 testtijd na sessie?
Klopt, de testtijd voor sessie is de tijd van 07:00 tot 08:00 en de testtijd van 14:00 tot 14:30 na sessie.

En is dan testtijd binnen sessie gewoon (eindtijd-begintijd) x 60?
De testtijd binnen sessie is de testtijd wat binnen de sessie valt. Als de sessie loopt van 08:00 - 14:00 en er vind een test plaats van 08:30-14:30, dan valt er 5,5 uur binnen sessie (330 minuten) en ene half uur na de sessie.

Kunnen meer testen plaatsvinden vóór begintijd en/of ná eindtijd?
Nee dat kan niet

Starten testen altijd vóór begintijd en eindigen ze altijd ná eindtijd?
Nee, dat is niet altijd zo. Het gebeurd ook vaak dat ze tegelijk beginnen of zelfs later beginnen dan de sessie

Staan testen altijd op volgorde?
Ik kan het wel zo sorteren dat ze op volgorde staan. Testen kunnen elkaar nooit overlappen.

Worden testen altijd op dezelfde dag gestart als dat ze worden beëindigd?

Klopt, dat is altijd op dezelfde dag.

Groetjes,

Danielle
 
Probeer het eens als volgt:
Code:
E2: =($B2-INDEX(TESTEN!$C$2:$C$7;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$7;0)))*60*24
F2: =MIN((C2-B2);(INDEX(TESTEN!$D$2:$D$8;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$8;1))))*60*24
G2: =(INDEX(TESTEN!$D$2:$D$7;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$7;1))-$C2)*60*24

N.B.: MATCH = VERGELIJKEN in NL
 
Ja super, dit lijkt goed te gaan :thumb:.

Kan het ook zo dan wanneer er een - getal uit komt dat er dan 0 komt te staan?

Dus als de sessie begint om 07:30 en de test om 08:00 dan komt er in de kolom testtijd voor sessie -30 te staan. Maar kan er dan ook 0 komen te staan? Er is dan immers geen tijd voor de sessie
 
Dat kan:

Code:
E2: =MAX(($B2-INDEX(TESTEN!$C$2:$C$7;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$7;0)))*60*24;0)
G2: =MAX((INDEX(TESTEN!$D$2:$D$7;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$7;1))-$C2)*60*24;0)
 
60*24 = 1440

*1440
 
@HSV, ik heb het even nagerekend en het klopt:thumb:

Toch vind het niet verkeerd om voor iemand die niet bekend is met het omrekenen van de de tijdnotatie naar een numerieke waarde de 24 en 60 in de formule op te nemen. Dit zijn herkenbare getallen voor het aantal uren en minuten. 1440 zal bij menigeen een ? oproepen.
 
Ja sorry voor de verwarring.
Jij die al een x aantal jaar Excel uitoefent en het na moet rekenen.

Geen handige keuze van me.
 
Als alternatief kun je 60*24 ook weg laten en het celformaat op [m] zetten dan rekent excel het zelf uit naar het aantal minuten.
 
Hallo,

In de praktijk komt het voor dat er sessie zijn waarop geen testen zijn uitgevoerd. Nu gaat die in de berekening niet helemaal lekker. Er moet dan gewoon drie keer een 0 komen te staan.

Weet iemand hoe ik dit kan oplossen?

Ik heb een bijlage toegevoegd.

In ieder geval bedankt voor de eventuele reacties.

Groetjes,

Danielle
 

Bijlagen

  • voorbeeld.xlsx
    11,7 KB · Weergaven: 40
Hmmm. Het is dus natuurlijk lastiger dan op het eerste gezicht lijkt ...

Bij geen uitgevoerde testen is het een kwestie van gewoon een lus eromheen zetten. Als niet gevonden dan 0. Dus:
Code:
 =IF($H2=0;0;MAX(($B2-INDEX(TESTEN!$C$2:$C$1000;MATCH(SESSIE!$A2;TESTEN!$A$2:$A$1000;0)))*60*24;0))
Overigens door de aanwijzing van popipipo te volgen (format op [m]) kun je de *60*24 schrappen.

Maar de andere vraag in het bestand (Dit moet toch 240 minuten zijn) is een stuk lastiger.

Kijk maar eens naar SESSIE_ID = 104.
Wat wil je hier zien?
De sessie loopt van 8:00 t/m 14:00. De eerste test start 8:22 en eindigt 15:12. Dus zegt mijn berekening eigenlijk dat 15:12-8:22 > 14:00-8:00. Dus wordt 6 uur = 360 minuten weergegeven. Of wil je hier zien dat de eerste test start om 8:22 en de eindtijd van de sessie < eindtijd test dus eindtijd sessie - 8:22 = 14:00-8:22 = 338 minuten?

En als ik dan nog verder redeneer. Wil je daar 310 minuten zien? Immers, de werkelijke testtijd = 53 minuten + 257 minuten binnen de sessie omdat er ook nog een pauze zit tussen TEST_ID 1 en TEST_ID 2 en TEST_ID eerder eindigt dan de sessie ...
 
Toch nog even aan het stoeien geweest. In de aanname dat je het laatste wilt, en dat je de formatting van de cellen op [m] zet kun je de volgende formules gebruiken:
Code:
E2: =IF($H2=0;0;MAX($B2-VLOOKUP($A2;TESTEN!$A$2:$D$14;3;FALSE);0))
F2: =IF($H2=0;0;SUMPRODUCT((TESTEN!$D$2:$D$14-TESTEN!$C$2:$C$14)*(TESTEN!$A$2:$A$14=$A2))-$E2-$G2)
G2: =IF($H2=0;0;MAX(INDEX(TESTEN!$D$2:$D$14;MATCH(1;MATCH(TESTEN!$A$2:$A$14;$A2;0);1))-VLOOKUP($A2;$A$2:$C$6;3;FALSE);0))

Let op: De laatste formule is een matrix formule dus afsluiten met Ctrl+Shift+Enter
 
met vba krijg je zoiets, zie grijze cellen:
ps deze houdt wel rekening met de "Pauze" tijden
 

Bijlagen

  • voorbeeld met vba function.xlsm
    18,5 KB · Weergaven: 54
Deze formule werkt met dagen, uren, minuten, seconden, weekends en feestdagen
Niet met pauzes :(
What more do you want :)

SORRY, VERKEERDE TOPIC BEANTWOORD
 

Bijlagen

  • Datum en Tijd Rekenen(PcB).xlsx
    12,4 KB · Weergaven: 31
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan