Изучив исходную версию моего ответа, я понял, что объединение всех необходимых формул форматирования на самом деле оказалось немного проще, чем я ожидал. Это, и я использовал неправильные цвета. Вот как вы можете делать все, что вам нужно, полностью в рамках условного форматирования.
Все поля ниже введены вручную. Убедитесь, что столбцы C, E и F отформатированы в формате даты / времени.
Вот скриншот правил условного форматирования. Здесь нет необходимости использовать "Stop If True", так как формулы "рано" и "поздно" не пересекаются. Приоритетное упорядочение "ранних" и "поздних" правил не имеет значения, но вам нужно убедиться, что "вовремя" - последняя обработанная.
Формулы:
Ранний полпути (применить к колонке E):
=E1<=C1+TIME(0,D1/2-15,0)
Поздно на полпути (применить к колонке E):
=E1>=C1+TIME(0,D1/2+15,0)
Раннее прибытие (применить к колонке F):
=F1<=C1+TIME(0,D1-15,0)
Позднее прибытие (применить к колонке F):
=F1>=C1+TIME(0,D1+15,0)
Вовремя (Применить к E:F; Убедитесь, что это последнее обработанное правило.):
=AND(ISERROR(SEARCH("Actual",E1)),NOT(ISBLANK(E1)))
По сути, правило "Ранний полпути" означает:
Возьмите время в пути, разделите его на два, вычтите пятнадцать минут и прибавьте к времени отправления. Если фактическое время полпути меньше или равно этому значению, выделите ячейку.
Вы можете, вероятно, выяснить остальные правила раннего / позднего оттуда. Примечание. Ранние правила будут вызывать ложное срабатывание в пустой ячейке, если в той же строке указано время отправления. Учитывая правило "Вовремя", которое я использовал (см. Ниже), вы, вероятно, сможете выяснить, как предотвратить это, если хотите.
Правило "Вовремя" в значительной степени является стандартным универсальным средством, которое должно запускаться для чего угодно, кроме заголовков или пустой ячейки. Благодаря этому ваша таблица будет выглядеть аккуратно, и в то же время будет относительно простым (читай: не больше / меньше или математика) правилом типа «все, что не соответствует другим». По сути, это означает:
Если поиск строки "Actual" приводит к ошибке (например: "Actual" не существует в клетке), и ячейка не пуста, выделите ячейку.
Конечно, как уже говорилось, правило "в срок" работает правильно, только если это последнее обработанное правило.