Расчет сдвига времени примыкания для данного сдвига с помощью VBA в Microsoft Excel
В этой статье мы создадим настраиваемую функцию или UDF для расчета времени соблюдения смены для агентов.
Необработанные данные для этого примера состоят из идентификатора агента, а также времени входа и выхода каждого агента в течение дня. Мы также определили время начала и окончания смены.
Мы использовали специальную функцию «TimeInterval» для расчета времени соблюдения смены. Эта функция принимает на вход четыре параметра.
Функция TimeInterval (Login, Logout, ShiftStartTime, ShiftEndTime)
Время начала смены определяется в ячейке C7, а время окончания смены определяется в ячейке C8.
Логическое объяснение
Чтобы рассчитать время соблюдения смены, мы изменили время входа в систему на время начала смены. Если время входа в систему раньше, чем время начала смены, то время начала смены будет считаться временем входа в систему. Если время выхода позже, чем время окончания смены, то время окончания смены будет считаться временем выхода. Теперь разница между временем входа в систему и временем выхода из системы даст время соблюдения смены.
Пожалуйста, введите код ниже
Option Explicit Function TimeInterval(Login As Double, Logout As Double, _ ShiftStartTime As Double, ShiftEndTime As Double) 'Checking whether login time is less than logout time If Login > Logout Then TimeInterval = "Login time should be less than logout time" Exit Function End If 'If login is less than shift start time then changing login time to shift start time If Login < ShiftStartTime Then Login = ShiftStartTime 'If logout is greater than shift end time then changing logout time to shift end time If Logout > ShiftEndTime Then Logout = ShiftEndTime TimeInterval = Logout - Login End Function
Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.
Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]