Snyding van datumintervalle

Een van die tipiese take vir 'n Microsoft Excel-gebruiker. Ons het twee reekse datums van die tipe "begin-einde". Die uitdaging is om te bepaal of hierdie reekse oorvleuel en, indien wel, met hoeveel dae.

Sny of nie?

Kom ons begin deur die vraag op te los of daar in beginsel 'n kruising van intervalle is? Gestel ons het 'n tabel van werkskofte vir werknemers soos hierdie:

Dit word duidelik gesien dat die werkskofte van Yaroslav en Elena mekaar kruis, maar hoe om dit te bereken sonder om 'n kalenderskedule en visuele beheer te bou? Die funksie sal ons help SUMPRODUCT (SOMPRODUK).

Kom ons voeg nog 'n kolom in ons tabel in met 'n formule wat die Boolese waarde TRUE lewer as die datums sny:

Hoeveel dae is die kruising?

As dit fundamenteel nie maklik is om te verstaan ​​of ons intervalle kruis of nie, maar om presies te weet hoeveel dae presies in die kruising val, dan word die taak meer ingewikkeld. Logies is dit nodig om soveel as 3 verskillende situasies in een formule te "pomp":

  • intervalle oorvleuel nie
  • een van die intervalle absorbeer die ander heeltemal
  • intervalle sny gedeeltelik

Van tyd tot tyd sien ek die implementering van hierdie benadering deur ander gebruikers wat 'n klomp geneste IF-funksies gebruik, ens.

Trouens, alles kan pragtig gedoen word deur die funksie te gebruik MEDIËN (MEDIAAN) uit kategorie statistiese.

As ons die begin van die eerste interval voorwaardelik aanwys as N1, en die einde vir K1, en die begin van die tweede N2 en eindig vir K2, dan in algemene terme kan ons formule geskryf word as:

=MEDIAN(N1;K1+ 1;K2+1)-MEDIAAN(N1;K1+ 1;N2)

Kompak en elegant, is dit nie? 😉

  • Hoe werk Excel eintlik met datums? Hoe om die aantal kalender- of werksdae tussen datums te bereken?
  • Hoe om 'n kalenderskedule (vakansies, opleiding, skofte ...) in Excel te bou deur voorwaardelike formatering te gebruik?
  • Kontroleer een of meer toestande met IF (IF) funksies

Lewer Kommentaar