Препоръчано, 2024

Избор На Редактора

Как да използваме If и Nested Ако отчети в Excel

Една функция на Excel, която използвам доста в моите формули, е функцията IF . Функцията IF се използва за тестване на логическо условие и дава два различни резултата в зависимост от това дали логическото условие връща TRUE или FALSE .

Да използваме таблицата за продажби на мобилни телефони по-долу като пример. Можете да изтеглите примерния файл тук.

IF функция с едно условие

Помислете за сценарий, в който трябва да изчислите таксата на Комисията за всеки ред за продажби, в зависимост от това къде са извършени продажбите ( колона D ). Ако продажбите са извършени в САЩ, таксата за Комисията е 10%, в противен случай останалите места ще имат такса от 5% за Комисията.

Първата формула, която трябва да въведете в клетка F2 е както е показано по-долу:

 = IF (D2 = "САЩ", E2 * 10%, E2 * 5%) 

Разбивка по формулата:

  1. = IF ( - "=" показва началото на формула в клетката и IF е функцията excel, която използваме.
  2. D2 = ”USA” - логически тест, който извършваме (т.е. ако данните в колона D2 са САЩ ).
  3. E2 * 10% - Резултат, който ще бъде върнат от формулата, ако първоначалният логически тест е в TRUE (т.е. стойността в колона D2 е САЩ ).
  4. E2 * 5% - Резултат, който ще бъде върнат от формулата, ако първоначалните резултати от логически тестове в FALSE (т.е. стойността в колона D2 не е САЩ ).
  5. ) - Затваряща скоба, показваща края на формулата.

След това можете да копирате формулата от клетка F2 в останалите редове в колона F и тя ще изчисли таксата на Комисията за всеки ред, или с 10% или 5%, в зависимост от това дали логическият тест IF връща TRUE или FALSE на всеки ред.

IF функция с множество условия

Какво ще стане, ако правилата са малко по-сложни, когато трябва да тествате повече от едно логическо условие с различни резултати, които се връщат за всяко състояние?

Excel има отговор на това! Можем да комбинираме няколко функции на IF в рамките на една и съща клетка, която понякога се нарича Nested IF .

Помислете за подобен сценарий, при който комисионите са различни за всяка позиция за продажба, както следва:

  • САЩ 10%
  • Австралия 5%
  • Сингапур 2%

В клетка F2 (която по-късно ще бъде копирана в останалите редове в същата колона F) въведете формулата, както следва:

 = IF (D2 = "САЩ", Е2 * 10%, IF (D2 = "Австралия", Е2 * 5%, Е2 * 2%)) 

Разбивка по формулата:

  1. = IF ( - Начало на формулата с помощта на IF изявление
  2. D2 = ”USA” - Първият логически тест, който извършваме (т.е. ако данните в колона D2 са САЩ ).
  3. E2 * 10% - Резултат, който ще бъде върнат от формулата, ако първоначалният логически тест е в TRUE (т.е. стойността в колона D2 е САЩ ).
  4. IF (D2 = ”Австралия”, E2 * 5%, E2 * 2%) - втори Excel IF отчет, който ще бъде оценен, ако първоначалният логически тест е довел до FALSE (т.е. стойността в колона D2 не е САЩ ). Това е подобен синтаксис на " IF Function with Single Condition", обсъден по-рано в тази статия, където ако стойността на Cell D2 е Австралия, резултатът от E2 * 5% ще бъде върнат. В противен случай, ако стойността не е Австралия, функцията ще върне резултат от E2 * 2%.
  5. ) - Затваряща скоба, показваща края на формулата за първата функция IF .

Тъй като Excel ще оцени формулата отляво надясно, когато се изпълни логически тест (напр. D2 = “USA”, функцията ще спре и ще върне резултата, игнорирайки следващите логически тестове след (например D2 = “Австралия”) . )

Така че, ако първият логически тест покаже FALSE (т.е. местоположението не е САЩ ), той ще продължи да оценява втория логически тест. Ако и вторият логически тест върне FALSE (т.е. местоположението не е Австралия ), не е необходимо да тестваме по-нататък, тъй като знаем, че единствената възможна стойност за клетка D2 е Сингапур, следователно трябва да върне резултат от E2 * 2% .

Ако предпочитате за яснота, можете да добавите третия логически тест IF (D2 = "Сингапур", "стойност ако е TRUE", "value if FALSE") . Следователно пълната разширена формула е показана по-долу:

 = IF (D2 = "САЩ", Е2 * 10%, IF (D2 = "Австралия", Е2 * 5%, IF (D2 = "Сингапур", Е2 * 2%))) 

Както беше споменато по-горе, горното ще върне същия резултат като първоначалната формула, която имахме.

 = IF (D2 = "САЩ", Е2 * 10%, IF (D2 = "Австралия", Е2 * 5%, Е2 * 2%)) 

Бързи съвети

  • За всеки един IF ( функция, трябва да има отваряща и затваряща кръгла скоба. Когато има три IF функции съгласно един от примерите по-горе, формулата ще се нуждае от три затварящи скоби “)))”, всяка от които маркира края на съответно отварящо IF ( изявление.
  • Ако не определим втория резултат от логическия тест (когато логическият тест доведе до FALSE ), стойността по подразбиране, зададена от Excel, ще бъде текстът „FALSE“. Така формулата = IF (D2 = ”USA”, E2 * 10%) ще върне текста “FALSE”, ако D2 не е “USA” .
  • Ако имате няколко различни логически теста всеки със свой различен резултат, можете да комбинирате / включите функцията IF многократно, една след друга, подобно на примера по-горе.
Top