Доброго дня, друзья! Нужна ваша помощь. Задача: Рассчитать время затраченное на выполнение работы, с учетом того, что сотрудник работает с 9 до 18 и что в субботу и воскресенье у него выходной. То есть, сколько время у него ушло на выполнение задания не считая время после 18:00 до 9:00 и не считая выходных(Которое сотрудник затратил именно в промежутке своего рабочего времени с 9 до 18 в будни)
Dyroff, и вам доброго дня! А точно есть диапазоны типа "01.09 — 04.09"??? То есть с таким же успехом он может начать в августе, а закончить, например, в октябре? То есть: 1. нужно высчитать количество ЦЕЛЫХ дней между 2мя датами 2. вычесть выходные (субботы и воскресенья), если они попадают в диапазон 3. рассчитать разницу в часах, после разборок с целыми Верно?
Serge_007 вот тут файл приложил (дублирую тут). Очень похоже на ваш случай. Почитайте тему и ещё тут почитайте.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Jack Famous, Верно. Спасибо за помощь. Но по ссылкам не совсем мои случаи. В первом считается просто количество пройденного времени без учета выходных, а второй- так вовсе обычная разница во времени.
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Jack Famous, В 8 часовом рабочем дне вся загвоздка, исключить выходные для меня не проблема. А вот как учесть при этом ещё и рабочий день- я не знаю. Потому и говорю, что не мой случай, даже не смотря на то, что одно из условий учтено. С чем Вы пытаетесь поспорить?
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
webley, В 22 строке Вашего примера считает странно (либо я криво условие задал) Начало выполнения в пятницу в 19:30 а окончание в понед в 11:30. По идее должно стоять 2:30 так как рабочего времени потрачено на это именно столько (понед с 9:00) ведь в пятницу после 18:00 уже нерабочее время
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
Ребят, тема ходовая (сам не сталкивался, т.к. учёт ведётся изначально в более "удобоваримом" виде), на форумах в интернетах подобных вопросов полно. Так вот, мастера, может сможет кто UDFку смастерить для универсальности?
Примеры переменных:
начало (яч) — в формате даты-времени (как в примере) конец (яч) — в формате даты-времени (как в примере) время работы с… (время "чч:мм") время работы по… (время "чч:мм") перерыв с… (время "чч:мм") перерыв по… (время "чч:мм") выходные (в днях недели, например "6,7" - если суббота и воскресенье) праздники (диапазон дат)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Dyroff, я позже своего монстра скину))) решение через связь таблиц. Не будете пользоваться, но, может, что-то подсмотрите
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Jack Famous, ну не то чтобы вообще не учитывает (хотя по факту получается 9-ти часовой), но настолько частные случаи действительно не рассмотрены как маловероятные - начать работать раньше начала рабочего дня и закончить позже окончания рабочего дня и все это в течении одного дня... Думаю, что для практического применения это излишне
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Вот)) этот монстрилла, кажется, учитывает вообще ВСЁ))) от пользователя нужно ввести только дата-время начала и окончания и заполнить праздники. Смотрите, разбирайтесь, спрашивайте и пользуйтесь (таблица динамическая)
P.S.: столбцы с формулами скрыты все, кроме 2х итоговых
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
gilmark, спасибо. Дело давнее - под конкретную задачу всё работало, а лучшее - враг хорошего. Сейчас времени на доработку нет, но, думаю, что немного "покопавшись в интернетах", вы сами всё легко исправите
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Jack Famous, да уже голову сломал, если честно. Был обрадован, найдя Ваш файл, но, к сожалению, начало в позднее время (после 18) дает какие-то странные результаты...
gilmark написал: начало в позднее время (после 18) дает какие-то странные результаты...
Переход в другие сутки/день не учитываете? OFF И вообще, вам что - до секунд/минут точность нужна? Резерв времени на болезни, штормы, прогулы по загулам - где он? Или это просто ваше учебно-тренировочное задание, котором вы "озадачиваете" форумчан?
Z,Нет, не учебно-тренировочное. И не до секунд. Реальный кейс. Примем начало рабочего дня в 8 утра, конец в 18 часов. Начало выполнения задачи 27.09.18 в 18:30. Это четверг. Конец выполнения задачи 1.10.18 в 10:30. Это понедельник.
Считаю устно: у нас вся пятница (10 часов) + 2,5 часа понедельника. Итого 12,5 часов. Верно?
Далее считаю в файле. Я даже ничего не меняю, чтоб не нарушить эксперимента. Получается 18,5 часов (см. скриншот).
JayBhagavan, 1. Когда даты одинаковые, но время разное, то считает неправильно. Небольшая доработка решает эту проблему (см. скриншот 1) 2. Когда дата на следующий день, то тоже происходит ошибка (см. скриншот 2)