
Generisk formel
=MAX(MIN(end1,end2)-MAX(start1,start2)+1,0)
Sammanfattning
För att beräkna antalet dagar som överlappar varandra i två datumintervall kan du använda grundläggande datumräkning tillsammans med funktionerna MIN och MAX.
I exemplet som visas är formeln i D6:
=MAX(MIN(end,C6)-MAX(start,B6)+1,0)
Förklaring
Excel-datum är bara serienummer, så du kan beräkna varaktigheter genom att dra det tidigare datumet från det senare datumet.
Det här är vad som händer i kärnan av formeln här:
MIN(end,C6)-MAX(start,B6)+1
Här är helt enkelt subtrahera ett tidigare datum från ett senare datum. För att ta reda på vilka datum som ska användas för varje datumintervalljämförelse använder vi MIN för att få det tidigaste slutdatumet och MAX för att få det senaste slutdatumet.
Vi lägger till 1 i resultatet för att se till att vi räknar "staketstolpar" och inte "mellanrum mellan staketstolpar" (analogi från John Walkenbach från Excel 2010-bibeln).
Slutligen använder vi MAX-funktionen för att fånga negativa värden och returnera noll istället. Att använda MAX på detta sätt är ett smart sätt att undvika att använda IF.