Я полностью застрял на этом, ваша помощь будет высоко оценена! Допустим, у меня есть 2 смены на электростанции, смена 1 = 10 вечера - 4 часа утра и смена 2 = 8 утра - 4 часа дня. С 4 до 8 утра на заводе не ведется никакой работы. Ячейка A1 = Входящее время, Ячейка B1 = Исходящее время и Ячейка C1 = Время обработки (или работы). Я пытаюсь найти формулу, которая может рассчитать время обработки, скажем, например, входящее время (в ячейке A2) составляет 6:00 утра, а исходящее время (в ячейке B2) - 15:00, тогда мое время обработки в ячейке C2 должно быть 6 ,
IF((IF 4:00<A2<8:00,"0", ??)
Синтаксис времени полностью смущает меня. Я думал о вложенном операторе IF, в котором есть 4 случая: 1) входящее и исходящее время попадают между обоими диапазонами сдвига, 2) исходящий находится не в пределах диапазона, а входящий, 3) наоборот 2, 4) оба раза не в зоне
Точно так же, как насчет написания макроса? (значения времени, вероятно, всегда будут в часах, например, 2:00, 3:00, 4:00 и в 24-часовом формате). Я определил переменные, и я думаю, что метод, чтобы показать часы часов для входящих и исходящих, но я застрял
sub time()
dim inbound as string
dim outbound as string
dim processing as string
inbound = Thisworkbook.Sheets("Sheet1").Range("A:A").Value
outbound = Thisworkbook.Sheets("Sheet1").Range("B:B").Value
processing = Thisworkbook.Sheets("Sheet1").Range("C:C").Value
IF Len(inbound) = 2 Then
inbound = "00:" & inbound
ELSEIF Len(inbound) = 3 Then
inbound = "0" & Left(inbound,1) & ":" & Right(inbound,2)
ELSEIF Len(inbound) = 4 Then inbound = Left(val,2) & ":" & Right (inbound,2)
ELSE inbound = "Not a valid time"
(то же самое, если еще операторы впоследствии для исходящих также)
Пожалуйста, ваша помощь будет принята с благодарностью!