Я пытаюсь понять, как вставить несколько формул в одну ячейку. Расчет относится к дате и времени.
Ниже приведены мои вопросы.
Если A1 = Дата и B1 = Время (военное)ИC1=Дата и D1=Время (военное), чтобы получить разницу во времени в часах, я использую приведенную ниже формулу в F1.
=((C1+D1)-(A1+B1))*24
Мне нужно сделать так, чтобы F1 определял, нет ли значения в A1 и B1, а затем использовать =now()
функцию для завершения формулы. Другими словами, мне нужна следующая формула, чтобы она сработала.
=(now()-(A1+B1))*24
или что-то в этом роде.
Я новичок в Excel и мне нужно создать отчет об измерении времени.
решение1
Первый вопрос: какое именно состояние вы хотите проверить? Я думаю, вы хотите
OR(ISBLANK(C1), ISBLANK(D1))
или
OR(C1="", D1="")
что означает почти одно и то же — что либо C1
или D1
пусто. Другие возможности включают
AND(ISBLANK(C1), ISBLANK(D1))
или
AND(C1="", D1="")
ISBLANK(C1)
или
C1=""
с ожиданием, что пробел
D1
будет рассматриваться как00:00
.(C1+D1)=0
что практически эквивалентно
AND(C1="", D1="")
.
После того, как вы выбрали свое условие, функция IF
довольно проста. Решение «грубой силы» будет таким:
=IF(OR(C1="",D1=""), (NOW()-(A1+B1))*24, ((C1+D1)-(A1+B1))*24)
Но общие части можно вынести наружу:
=(IF(OR(C1="",D1=""), NOW(), C1+D1) - (A1+B1)) *24
решение2
Excel уже прекрасно умеет хранить даты и время именно так, как вам нужно — вам не нужно умножать значения на 24 и т. д. Если вы просто укажете format
ячейки как даты или время, то они автоматически будут отображаться как часы и минуты (1,0 = 24 ч, 0,5 = 12 ч и т. д.)
Но я думаю, что формула, которую вы ищете, должна быть такой:
=IF((A1+B1)>0,now()-A1+B1,0)
Эта формула проверяет, больше ли ноль сумма A1 и B1, а затем возвращает вашу формулу. В противном случае она возвращает ноль. Если вы отформатировали ячейку для отображения времени, то этот ноль может отображаться как 00:00, что, по-видимому, и есть то, что вы запрашиваете.