Я использую сводные таблицы и сводные диаграммы для динамической панели инструментов в Excel. В настоящее время у меня есть 3 смены на работе, которые я хотел бы визуализировать, но для этого я должен:
Извлеките время из «Ячейки даты и времени», которую я делаю с помощью =A2 - ЦЕЛОЕ(A2) . Здесь нет проблем
Создайте вложенную формулу ЕСЛИ И, чтобы проверить, соответствует ли час какой-либо из этих смен:
15:00 - 23:00, 23:00 - 7:00, 7:00 - 15:00
Я использую это:
=IF(AND(E2>=TIME(15,0,0),E2<TIME(23,0,0)),"3-
11",IF(AND(E2>=TIME(23,0,0),E2<TIME(7,0,0)),"11 - 7","7 - 3"))
Но он путает смены, показывает только смены 3-11 и 7-3, как будто не может отличить утро от вечера... я пропускаю смену с 23:00 до 7:00.


The decimal number returned by
TIMEis a value ranging from 0 (zero) to 0.99988426, representing the times from 0:00:00 (12:00:00 AM) to 23:59:59 (11:59:59 P.M.)
Другими словами, AND(E2>=TIME(23,0,0),E2<TIME(7,0,0) эквивалентно (с округлением до 2 знаков после запятой) AND(E2>=0.96,E2<0.29). Итак, ваша вторая формула AND может быть Только ложной.
Либо измените это AND на OR, либо измените свою вторую логику IF:
...IF(AND(E2>=TIME(7,0,0),E2<TIME(15,0,0)),"7 - 3","11 - 7")
Работал как шарм! Я переворачиваю 2-ю логику IF. Также спасибо за ссылку на документацию TIME!
Рад помочь!
Вам нужен
ORдля этого последнего условия. Или измените второй IF, чтобы он обрабатывал экземпляр «7–3», а затем вы можете вернуть «11–7» в качестве последнего аргумента IF.