Вопрос состоит в том что имеется широкий спектр данных временных диапазонов в течение которых производился определенный вид работ.
(Ссылка на файл прилагается - https://yadi.sk/i/RLPjsbk1eqMCxA)
Как распределить данные таким образом чтобы эти временные диапазоны (допустим с 16:20 до 19:55) попали в таблицу времени суток таким образом ( промежуток 16-17 часов - 20 мин; 17-18 часов - 60 мин; 18-19 часов - 60 минут и 19-20 часов - 55 минут) и наиболее просто рассчитать количество затрат времени за определенный период приходящийся на каждый час суток. (допустим за месяц сумма затрат часов приходящихся на приготовление мною кофе с 8 до 9 утра составляет порядка 3 - xD )
Задача состоит в автоматизации процесса обработки этой базы данных. Я пытался через двойное условие "если" однако мне необходимо чтобы в зависимости от выполнения или не выполнения первоначального условия он производил один из двух вариантов расчета, плюс производил проверку на сумму временного диапазона (руководствуясь примером выше, сумма затрат должна соответствовать 3 часа 35 минут).
За помощь заранее благодарен!
Доброе утро... Сел сегодня за вашу задачу. Отвечаю по порядку.
Если требуется одновременно проверить два и более условия, примените функции И либо ИЛИ
Функция И даст итоговый результат ИСТИНА, ЕСЛИ СОБЛЮДЕНЫ ВСЕ УСЛОВИЯ
=И(B(10>4;5<8) - результат будет ИСТИНА
=И(B(10>4;5>8) - результат будет ЛОЖЬ
=И(B(10<4;5>8) - результат будет ЛОЖЬ
функция ИЛИ выводит ИСТИНУ, если соблюдено хотя бы одно условие
=ИЛИ(B(10>4;5>8) - результат будет ИСТИНА
=ИЛИ(B(10>4;5<8) - результат будет ИСТИНА
=ИЛИ(B(10<4;5>8) - результат будет ЛОЖЬ
есть еще вариант ИСКЛИЛИ, работает , если не ошибаюсь с офиса 2013
Там результат ИСТИНА, если либо все условия выполняются, либо все не выполняются
=ИСКЛИЛИ(B(10>4;5>8) - результат будет ЛОЖЬ
=ИСКЛИЛИ(B(10>4;5<8) - результат будет ИСТИНА
=ИСКЛИЛИ(B(10<4;5>8) - результат будет ИСТИНА
Что касается самой задачи. Проблема в том, что отрицательного времени не может быть.
У меня получилась формула, рассчитывающая минуты за первый и последний час работы.
=ЕСЛИ(ЕСЛИ(И($C56>=E$1;$C56<=F$1);F$1-$C56;ЕСЛИ(И($D56<=F$1;$D56>=E$1);$D56- E$1;""))>0;ЕСЛИ(И($C56>=E$1;$C56<=F$1);F$1-$C56;ЕСЛИ(И($D56<=F$1;$D56>=E$1);$D56- E$1;""));"")
тут на самом деле формула не такая страшная. проверяется результат работы
ЕСЛИ(И($C39>=E$1;$C39<=F$1);F$1-$C39;ЕСЛИ(И($D39<=F$1;$D39>=E$1);$D39- E$1;"")
если он больше нуля, то выводится его результат, в противном случае выводится пустое значение с помощью пустых кавычек
Фишка тут кроется в синтаксисе функции ЕСЛИ
ее параметры
Условие
Действие , если условие выполняется,
3, Действие, если условие не выполняется
так вот, 2 и 3 параметр могут быть отдельным значением, значением ячейки или диапазона, математической формулой, функцией, в том числе, естественно, функцией ЕСЛИ.
в моем примере вот этот кусок с функцией ЕСЛИ
ЕСЛИ(И($C39>=E$1;$C39<=F$1);F$1-$C39;ЕСЛИ(И($D39<=F$1;$D39>=E$1);$D39- E$1;"") вначале используется для сравнения, а потом как второй аргумент для первоначальной ЕСЛИ.
Вот ссылка на файл, лист расчеты посмотрите.
https://yadi.sk/i/JTaaSXjHq1ZkOA
Осталось вывести целые часы, но оставляю это на ваше рассмотрение. Могу дать подсказку, что можно теперь добавить вторую почасовую таблицу, а уже в ней использовать результаты из первой
Удачи вам!
PS Кстати, спасибо за идею для нового поста на моем сайте!
Выражаю вам свою благодарность и почтение за оказание помощи!