
Загальна формула
=MAX(MIN(end1,end2)-MAX(start1,start2)+1,0)
Резюме
Щоб розрахувати кількість днів, що перекриваються у двох діапазонах дат, ви можете використовувати базову арифметику дати разом із функціями MIN та MAX.
У наведеному прикладі формула в D6 має вигляд:
=MAX(MIN(end,C6)-MAX(start,B6)+1,0)
Пояснення
Дати Excel - це просто серійні номери, тому ви можете обчислити тривалість, віднявши попередню дату від пізнішої.
Ось що відбувається в основі формули тут:
MIN(end,C6)-MAX(start,B6)+1
Ось просто віднімання більш ранньої дати від більш пізньої дати. Щоб зрозуміти, які дати використовувати для кожного порівняння діапазону дат, ми використовуємо MIN, щоб отримати найранішу дату завершення, і MAX, щоб отримати останню дату завершення.
До результату ми додаємо 1, щоб переконатися, що ми підраховуємо "стовпи огорожі", а не "проміжки між стовпами огорожі" (аналогія Джона Уокенбаха з Біблії Excel 2010).
Нарешті, ми використовуємо функцію MAX, щоб затримати від’ємні значення і замість цього повернути нуль. Використання MAX таким чином є розумним способом уникнути використання IF.