Как вернуть значение ячейки, если оно попадает в два диапазона дат? - PullRequest
0 голосов
/ 07 марта 2020

У меня есть некоторые местоположения и даты в следующей таблице:

Лист

В настоящее время формула в ячейке E1 возвращает местоположение (Col E) для текущее событие относительно даты начала (Col F). Однако в настоящее время в нем не учитывается Дата окончания (Col G).

Screenshot of the current sheet highlighting the problem

Как видно из Прикрепленное изображение - Дата окончания пройдена, но Швеция по-прежнему указывается в качестве активного местоположения.

То, что я хотел бы сделать для формулы, это возврат «No Event», если текущая дата находится за пределами указанных активных дат.

IE - с этого момента до 03-06-20 должно возвращаться «No Event», а затем с 04-06-20 до 26 -07-20 должен вернуть "Монреаль" и др.

Ответы [ 2 ]

1 голос
/ 07 марта 2020

Ваша формула кажется мне очень сложной, но я не совсем уверен, что понимаю, что вам нужно.

Вот формула, которую я бы использовал:

=IFERROR(FILTER(E3:E,F3:F<=C2,G3:G>=C2),"No Event")

Надеюсь, это поможет .

0 голосов
/ 07 марта 2020

Я нашел следующее (потенциальное) решение. Я не знаю, является ли это наиболее эффективным способом написания этой формулы, и был бы признателен за отзывы о ней:

=ARRAYFORMULA(IF($C$2=MEDIAN($C$2,
TO_DATE(MAX(IF($F3:$F7<C2,$F3:$F7))),
TO_DATE(MAX(IF($F3:$F7<C2,$G3:$G7)))),

VLOOKUP(ArrayFormula(TO_DATE(MAX(IF($F3:$F7<C2,$F3:$F7)))),{$F3:$F7,$E3:$E7},2,FALSE),
"No Event"))
...