Skæring af datointervaller

En af de typiske opgaver for en Microsoft Excel-bruger. Vi har to datointervaller af typen "begyndelse-slut". Udfordringen er at afgøre, om disse områder overlapper hinanden, og i givet fald med hvor mange dage.

Skæring eller ej?

Lad os starte med at løse spørgsmålet om, hvorvidt der i princippet er et skæring af intervaller? Antag, at vi har en tabel over arbejdsskift for medarbejdere som denne:

Det ses tydeligt, at Yaroslavs og Elenas arbejdsskift krydser hinanden, men hvordan beregner man dette uden at ty til at opbygge en kalenderplan og visuel kontrol? Funktionen vil hjælpe os SUMPRODUCT (SUMPRODUKT).

Lad os indsætte en anden kolonne i vores tabel med en formel, der giver den boolske værdi TRUE, hvis datoerne skærer hinanden:

Hvor mange dage er overfarten?

Hvis det grundlæggende ikke er let at forstå, om vores intervaller krydser hinanden eller ej, men at vide præcis, hvor mange dage der præcist falder i krydset, så bliver opgaven mere kompliceret. Logisk set er det nødvendigt at "pumpe" så mange som 3 forskellige situationer i én formel:

  • intervaller overlapper ikke hinanden
  • det ene af intervallerne absorberer det andet fuldstændigt
  • intervaller skærer delvist

Fra tid til anden ser jeg implementeringen af ​​denne tilgang af andre brugere, der bruger en masse indlejrede IF-funktioner osv.

Faktisk kan alt gøres smukt ved hjælp af funktionen MEDIAN (MEDIAN) fra kategori Statistisk.

Hvis vi betinget udpeger begyndelsen af ​​det første interval som N1, og slutningen for K1, og begyndelsen af ​​den anden N2 og ende for K2, så kan vores formel generelt skrives som:

=MIDDEL(N1;K1+ 1;K2+1)-MIDDEL(N1;K1+ 1;N2)

Kompakt og elegant, ikke? 😉

  • Hvordan fungerer Excel egentlig med datoer? Hvordan beregner man antallet af kalender- eller arbejdsdage mellem datoer?
  • Hvordan opbygger man en kalenderplan (ferier, træninger, vagter...) i Excel ved hjælp af betinget formatering?
  • Kontrol af en eller flere tilstande med IF (IF) funktioner

Giv en kommentar