Страницы: 1
RSS
Найти пересечение дат в диапазоне
 
Ребят, всем привет!
Понимаю, что тема заезженная, но по поиску подходящего для своего примера, решения не увидел...
Подскажите, можно ли для всего диапазона найти хоть одно пересечение или нет? Просто с формулой "конкретного ответа" - ДА или НЕТ  
 
Вариант формулой массива
Код
=СУММ(((СЧЁТЕСЛИМН($B$2:$B$11;"<="&$B$2:$B$11;$C$2:$C$11;">="&$B$2:$B$11)-1)>0)*1)
 
МатросНаЗебре, спасибо, но не работает - изменяет значение при первых же правильных поправках, при этом на остальные не реагирует, например:
При вводе формулы выдаёт значение 1, а при правке в строке 2 столбца "по" (с 31.12.2017 на 28.12.2017) изменяет на 0, хотя в столбцах присутствуют ещё другие пресечения...

при отсутствии пересечений будет значение 0, а при одном или более - 1
правильно ли я понял?
Изменено: Azakia - 26.02.2021 14:52:46
 
Формула введена тремя клавишами, как формула массива?
 
vikttur,да
 
Цитата
Azakia написал:
хотя в столбцах присутствуют ещё другие пресечения...
Например?
 
Помеченные оранжевым
 
Например эта строка?
16.05.201710.05.2017
Эммет Браун и Марти Макфлай сказали, что она будет работать, только если паровоз разгонится больше 85 миль в час.
 
Цитата
МатросНаЗебре написал:
Эммет Браун и Марти Макфлай сказали, что она будет работать, только если паровоз разгонится больше 85 миль в час.
=) понимаю, но я пытался накидать разных "сложностей" дабы при ответе смогли учесть это в формуле...

Цитата
МатросНаЗебре написал:
Например эта строка?16.05.201710.05.2017
в предыдущей тоже присутствует 10.05.2017
даже если пример с этими строками неудачный (удалим их), всё также имеет место быть первый, вышеописанный случай
 
Цитата
Azakia написал:
всё также имеет место быть первый, вышеописанный случай
Тот, который "с 31.12.2017 на 28.12.2017"?
Я не вижу, чтоб возникала ошибка. Вроде корректно отрабатывает.
 
МатросНаЗебре, Вашу формулу внёс как формулу массива в ячейку С11 (там где ответ), стоит значение 1
в строке
202.09.201631.12.2016
поправляю на
202.09.201628.12.2016
в ответ выбивает значение 0
все остальные пересечённые даты не изменены
 
И с какой строкой, по Вашем мнению, она пересекается?
 
МатросНаЗебре, например, в последней - 31.12.2016
Эта дата уже встречалась ранее (во второй строке)
Т.е. мы идем от прошлого к будущему, при этом любая дата, которая попадает в этот диапазон и должна "вылавливаться" так как этот день(дни) уже были учтены ранее
 
12.12.201731.12.2016
В этой?

Дата "С" больше даты "По". Формула на это не рассчитана.
 
Мммм...
Можно вот такой пример:
Для простоты возьмем кварталы

01.01.2020 - 31.03.2020
01.04.2020 - 30.06.2020
01.07.2020 - 30.09.2020
01.10.2020 - 31.12.2020

Если ввести следующей строкой:
22.09.2020 - 25.10.2020, то, в моем понимании, формула (опираясь на весь диапазон) сообщит, что это уже было в прошлом
Ну а если мы исправим на 23.01.2021 - 05.02.2021, то ок! такого ещё не встречалось

Или подобную задачу нельзя решить с помощью формул?
 
Формула в #2 работает на таких данных.

Ну или её модификация, чтоб уж точно выдавать, как в сообщении #15.
Код
=ЕСЛИ((СУММ(((СЧЁТЕСЛИМН($B$2:$B$6;"<="&$B$2:$B$6;$C$2:$C$6;">="&$B$2:$B$6)-1)>0)*1))=0;"ок! такого ещё не встречалось";"уже было в прошлом")

Вы точно вводите, как формулу массива?
 
Цитата
МатросНаЗебре написал:
Вы точно вводите, как формулу массива?
101%
 
И формулы из #2 и #16 не работают?
 
МатросНаЗебре, с примером кварталов работает!
буду пробовать со своим первоначальным источником (там слишком много дат)
спасибо за помощь!
Страницы: 1
Наверх