Можем ли мы использовать формулу в «value_if_false» функции IF в Excel? - PullRequest
0 голосов
/ 25 января 2020

У меня есть следующая формула:

=IF(OR(YEAR(Q2)=2020,YEAR(Q2)=2000),MONTH(Q2),0)

Но я хочу использовать формулу в value_if_false вместо 0.

Я хочу использовать следующую формулу в поле value_if_false которая отлично работает, когда используется сама по себе

=VALUE(LEFT(Q2, SEARCH("-",Q2,1)-2))

Так что моя окончательная формула хотела бы:

=IF(OR(YEAR(Q2)=2020,YEAR(Q2)=2000),MONTH(Q2),VALUE(LEFT(Q2, SEARCH("-",Q2,1)-2)))

Но я получаю #VALUE!, когда я нахожусь в условии value_if_false.

Есть идеи, что не так?

Спасибо

Ответы [ 2 ]

1 голос
/ 26 января 2020

Пожалуйста, попробуйте:

=IFERROR(IF(OR(YEAR(Q2)=2020,YEAR(Q2)=2000),MONTH(Q2)),VALUE(LEFT(Q2, SEARCH("-",Q2,1)-2)))

Проблема заключалась в том, что OR(YEAR(Q2)=2020,YEAR(Q2)=2000 выдает ошибку, прежде чем что-либо еще будет оценено, потому что такие вещи, как 1 - 0, не являются датами и не могут быть автоматически преобразованы в даты с помощью Excel. .

0 голосов
/ 25 января 2020

Ваш рабочий пример ссылается на ячейку A1, а функция в операторе if () ссылается на ячейку Q2.

Содержит ли Q2 знак «-», который вы проверяете? Потому что, если нет, это выдаст ошибку, с которой вам придется иметь дело - iferror () - это хорошо ...

Попробуйте:

=IF(OR(YEAR(Q2)=2020,YEAR(Q2)=2000),MONTH(Q2),iferror(VALUE(LEFT(Q2, SEARCH("-",Q2,1)-2)),0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...