2015-10-14 2 views
0

enter image description hereIF заявление с трхся условиями

колонок V является дата домашнего задания фактической отделки
колонок W требуется дата окончания

условие 1: если V не является пустым, возвращаемым значение "КИ"
условие 2: если «V пуст» и «W пуст», возвращаемое значение «ok»
Условие 3: если «V пуст» и «W> = сегодня()», возвращаемое значение «просрочено»

Я только в состоянии объединить условия 1 и 3 в моей IF формуле:

=IF(NOT(ISBLANK(V2)),"ok",IF(W2<=TODAY(),"over due","ok")) 

Может кто-нибудь помочь мне добавить условие два в моей формуле?

спасибо за помощь каждого пользователя/im действительно новое для stackoverflow. , и я уже кое-что узнал от всех.

Кстати я сделал опечатку в моем состоянии 3, оно должно быть "W < = сегодня()" вместо "W> = сегодня()"

благодаря

+1

Вы пробовали здание вспомогательные столбцы? – findwindow

ответ

2
=if( and( not(isblank(v2)), not(isblank(w2)) ), "ok", 
    if( not(isblank(v2)), "ok", 
     if( and( isblank(v2), w2 >= today() ), "overdue", "ok" ) 
    ) 
) 

Вставить это непосредственно в в поле формулы и посмотреть, как это работает.

+0

= if (и (isblank (v2), isblank (w2)), «ok», if (not (isblank (v2)), «ok», if (and (isblank (v2), w2 <= today()), «просроченный», «ok») ) ) Я изменил формулу, как показано выше, и она сработала. Спасибо за помощь. – JMIZE

+0

Добро пожаловать! Чтобы привести к закрытию вашего вопроса, не стесняйтесь отмечать любые ответы выше, как принято. – zedfoxus

0

Позвольте мне видеть;

В вашем дереве решений отсутствует один возможный выход; когда V пуст, W! пусто, а W < = сегодня()

После того, как вы сообщите нам, какой выход означает, вы можете легко помочь вам.

+0

Действительный комментарий, но не ответ. Я вижу, что ваша репутация не позволит вам комментировать: пожалуйста, убедитесь, что вы отредактировали свой ответ, как только ОП предоставит разъяснения. –

0

Попробуйте это.

=IF(NOT(ISBLANK(V2)),"ok",IF(ISBLANK(W2), "ok",IF(AND(ISBLANK(V2),W2 >= TODAY()),"Over Due", "Error"))) 

Как подсказка для будущих макросов, попробуйте создать их немного за раз. Для операторов IF это может стать сложным, но это может помочь.

Напишите первое условие типа «Другое значение» в качестве держателя места.

=IF(NOT(ISBLANK(V2)),"ok","Other Value") 

Как только у вас будет бит, работающий так, как вам нравится, тогда поставьте ложное состояние следующим образом.

=IF(NOT(ISBLANK(V2)),"ok",IF(ISBLANK(W2),"ok","Other Value")) 

И наконец, добавьте свое последнее условие.

+0

Хороший совет по строительству функций по одной секции за раз. –

0

Это довольно просто с одним утверждением И. Во-первых, переопределите логику, которая вам нужна для себя: есть только два результата, о которых вы заботитесь: задание незавершено и просрочено, ИЛИ назначение завершено/еще не выполнено. Поэтому, чтобы написать нашу инструкцию IF, проверьте только, является ли присвоение унифицированным и просроченным. В любом другом случае статус будет таким же.

Редактировать на комментарий

=IF(AND(ISBLANK(V1),W1<=TODAY(),W1>1),"overdue","ok") 
+0

Возможно, вы захотите еще раз переопределить его. Оба пустые = просроченные? –

+0

Согласен, спасибо - пропустил, что срок не всегда был заполнен; добавили еще один термин в инструкцию AND. –

+0

@JMIZE Просьба уточнить ваше определение OVERDUE, потому что этот ответ определяет его противоположность тому, как ваш вопрос. Все остальные ответы соответствовали вашему определению. –

Смежные вопросы