Функцията IF в Excel ви позволява да направите логическо сравнение между стойност и това, което очаквате, като тества за дадено условие и върне резултат, ако това условие е "Вярно" или "Невярно".
-
АКО (нещо е "Вярно", направи еди си какво, в противен случай направи нещо друго)
Какво ще стане обаче, ако трябва да проверите множество условия, където например всички условия трябва да са "Вярно" или "Невярно" (И), или само едно условие трябва да е "Вярно" или "Невярно" (ИЛИ), или ако искате да проверите дали дадено условие не отговаря НЕ на вашите критерии? И трите функции могат да се използва самостоятелно, но много по-често се срещат в комбинация с функцията IF.
Използвайте функцията IF заедно с AND, OR и NOT, за да извършвате множество оценки дали условията са "Вярно" или "Невярно".
Синтаксис
-
IF(AND()) - IF(AND(логически1; [логически2]; ...); стойност_ако_вярно; [стойност_ако_невярно]))
-
IF(OR()) - IF(OR(логически1; [логически2]; ...); стойност_ако_вярно; [стойност_ако_невярно]))
-
IF(NOT()) - IF(NOT(логически1); стойност_ако_вярно; [стойност_ако_невярно]))
Име на аргумент |
Описание |
|
логически_тест (задължително) |
Условието, което искате да проверите. |
|
стойност_ако_вярно (задължително) |
Стойността, която искате да се върне, ако резултатът от логически_тест е ВЯРНО. |
|
стойност_ако_невярно (незадължително) |
Стойността, която искате да се върне, ако резултатът от логически_тест е НЕВЯРНО. |
|
Ето един общ преглед как да структурирате отделните функции AND, OR и NOT. Когато комбинирате всяка от тях с инструкция IF, тя се разчита така:
-
AND – =IF(AND(нещо е вярно; нещо друго е вярно); стойност ако е вярно; стойност ако е невярно)
-
OR – =IF(OR(нещо е вярно; нещо друго е вярно); стойност ако е вярно; стойност ако е невярно)
-
NOT – =IF(NOT(нещо е вярно); стойност ако е вярно; стойност ако е невярно)
Примери
По-долу са представени примери за някои често срещани вложени инструкции IF(AND()), IF(OR()) и IF(NOT()) в Excel. Функциите AND и OR поддържат до 255 отделни условия, но не е добра практика да използвате повече от няколко, тъй като сложните вложени формули може да са много трудни за създаване, тестване и поддръжка. Функцията NOT изисква само едно условие.
Ето формулите, разписани според тяхната логика:
Формула |
Описание |
---|---|
=IF(AND(A2>0;B2<100);TRUE; FALSE) |
АКО A2 (25) е по-голямо от 0 И B2 (75) е по-малко от 100, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай и двете условия са изпълнени, така че се връща ВЯРНО. |
=IF(AND(A3="Червено";B3="Зелено");TRUE;FALSE) |
АКО A3 ("Синьо") = "Червено" И B3 ("Зелено") е равно на "Зелено", се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай само първото условие е вярно, така че се връща НЕВЯРНО. |
=IF(OR(A4>0;B4<50);TRUE; FALSE) |
АКО A4 (25) е по-голямо от 0 ИЛИ B4 (75) е по-малко от 50, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай само първото условие е вярно, но тъй като функцията ИЛИ изисква "вярно" само за един аргумент, формулата връща ВЯРНО. |
=IF(OR(A5="Червено";B5="Зелено");TRUE;FALSE) |
АКО A5 ("Синьо") = "Червено" ИЛИ B5 ("Зелено") е равно на "Зелено", се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай имаме "вярно" за втория аргумент, така че формулата връща ВЯРНО. |
=IF(NOT(A6>50);TRUE;FALSE) |
АКО A6 (25) НЕ Е по-голямо от 50, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай 25 не е по-голямо от 50, така че формулата връща ВЯРНО. |
=IF(NOT(A7="Червено");TRUE;FALSE) |
АКО A7 ("Синьо") НЕ Е равно на "Червено", тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. |
Имайте предвид, че във всички примери има затваряща скоба след съответните въведени условия. Останалите аргументи Вярно/Невярно остават като част от външната инструкция IF. Също така можете да заместите стойностите ВЯРНО/НЕВЯРНО с текстови или числови стойности, които да се връщат в тези примери.
Ето някои примери за използване на AND, OR и NOT за изчисляване на дати.
Ето формулите, разписани според тяхната логика:
Формула |
Описание |
---|---|
=IF(A2>B2;TRUE;FALSE) |
АКО A2 е по-голямо от B2, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. 12.03.2014 е по-голямо от 1.01.2014, така че формулата връща ВЯРНО. |
=IF(AND(A3>B2;A3<C2);TRUE;FALSE) |
АКО A3 е по-голямо от B2 И A3 е по-малко от C2, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай имаме "вярно" и за двата аргумента, така че формулата връща ВЯРНО. |
=IF(OR(A4>B2;A4<B2+60);TRUE;FALSE) |
АКО A4 е по-голямо от B2 ИЛИ A4 е по-малко от B2+60, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай за първия аргумент имаме "вярно", но за втория - "невярно". Тъй като функцията ИЛИ изисква "вярно" само за един аргумент, формулата връща ВЯРНО. Ако използвате съветника за изчисляване на формули от раздела "Формула", ще видите как Excel изчислява формулата. |
=IF(NOT(A5>B2);TRUE;FALSE) |
АКО A5 не е по-голямо от B2, тогава се връща ВЯРНО, в противен случай се връща НЕВЯРНО. В този случай A5 е по-голямо от B2, така че формулата връща НЕВЯРНО. |
Използване на AND, OR и NOT с условно форматиране в Excel
В Excel можете също да използвате AND, OR и NOT, за да зададете критерии за условно форматиране с опцията "Формула". Когато направите това, можете да пропуснете функцията IF и да използвате AND, OR и NOT самостоятелно.
В Excel, от раздела Начало щракнете върху Условно форматиране > Ново правило. След това изберете опцията "Използвайте формула, за да определите кои клетки да се форматират", въведете формулата и приложете формат по ваш избор.
Ако използваме горния пример с датите, ето как ще изглеждат формулите.
Формула |
Описание |
---|---|
=A2>B2 |
Ако A2 е по-голямо от B2, клетката се форматира, в противен случай не се прави нищо. |
=AND(A3>B2;A3<C2) |
Ако A3 е по-голямо от B2 И A3 е по-малко от C2, клетката се форматира, в противен случай не се прави нищо. |
=OR(A4>B2;A4<B2+60) |
Ако A4 е по-голямо от B2 ИЛИ A4 е по-малко от B2+60 (дни), тогава клетката се форматира, в противен случай не се прави нищо. |
=NOT(A5>B2) |
Ако A5 НЕ Е по-голямо от B2, клетката се форматира, в противен случай не се прави нищо. В този случай A5 е по-голямо от B2, така че като резултат се връща НЕВЯРНО. Ако промените формулата на =NOT(B2>A5), тя ще върне ВЯРНО и клетката ще се форматира. |
Забележка: Често срещана грешка е да въведете формулата за условно форматиране без знака за равенство (=). Ако направите това, ще видите, че диалоговият прозорец за условно форматиране добавя към формулата знак за равенство и кавички: ="OR(A4>B2;A4<B2+60)", така че ще трябва да махнете кавичките, за да може формулата да работи правилно.
Имате нужда от още помощ?
Вж. също
Винаги можете да попитате експерт в техническата общност на Excel или да получите поддръжка в Общността за отговори от.
Научете как да използвате вложени функции във формула
Общ преглед на формулите в Excel
Начини за избягване на повредени формули
Откриване на грешки във формули