Страницы: 1
RSS
Как посчитать, сколько дней из одного периода входит в другой
 
Что-то голова на простые решения не работает....  
есть диапазон дат, к примеру 21.05.2010 - 18.07.2010 и месяца: Апрель, Май, Июнь, Июль, Август. Нужно посчитать, сколько дней в каждом месяце из этого диапазона. Знаю, что есть простая арифметическая формула, но  без ЕСЛИ обойтись не могу...    
Может кто поможет?
 
РАЗНДАТ(начало1,начало2)-РАЗНДАТ(КОНЕЦ1, конец2)? Это для затравки. А пересекаются ли даты Вы и сами, Михаил... Или не то?
Я сам - дурнее всякого примера! ...
 
" но  без ЕСЛИ обойтись не могу... Может кто поможет"  
конструкция МАКС(МИН()) может помочь
 
без ЕСЛИ  
формулу возможно можно упростить
 
{quote}{login=MCH}{date=21.08.2010 11:11}{thema=}{post}без ЕСЛИ  
формулу возможно можно упростить{/post}{/quote}Да, кажется именно этот вариант я имел ввиду (когда то видел...)  
Спасибо!
 
Можно еще немного сократить  
=МИН(МАКС($B$6-B3+1;0);C3-B3)-МИН(МАКС($B$5-B3;0);C3-B3)  
(по прим post_148105.xls)
 
а можно так (еще короче):  
=МАКС(МИН($B$6+1;C3);B3)-МАКС(B3;МИН(C3;$B$5))
 
из недостатков двух предыдущих формул можно отнести то, что используется ячейка G3, в которой может быть неизвестно что (например текст, а не пусто)
 
{quote}{login=MCH}{date=22.08.2010 12:48}{thema=}{post}из недостатков двух предыдущих формул можно отнести то, что используется ячейка G3, в которой может быть неизвестно что (например текст, а не пусто){/post}{/quote}  
 
Кстати, а моя последняя формула из post_148138.xls работает, даже если в G3 текст
 
{quote}{login=MCH}{date=22.08.2010 12:43}{thema=}{post}а можно так (еще короче):  
=МАКС(МИН($B$6+1;C3);B3)-МАКС(B3;МИН(C3;$B$5)){/post}{/quote}Вот эта, пожалуй, самая подходящая, для моего случая.  
Ту, что я привел - немого не подходит (из-за G3)
 
Подводя итог - для  post_148084.xls (H2):  
=МАКС(МИН($B$2+1;F2+1);E2)-МАКС(E2;МИН(F2+1;$A$2))
 
{quote}{login=}{date=22.08.2010 04:02}{thema=}{post}Подводя итог - для  post_148084.xls (H2):  
=МАКС(МИН($B$2+1;F2+1);E2)-МАКС(E2;МИН(F2+1;$A$2)){/post}{/quote}  
Можно еще проще:  
=МАКС(;МИН(B$2;F2)+1-МАКС(A$2;E2))
Страницы: 1
Читают тему
Наверх