Логические функции Excel

Подобного рода функциями служат такие, которые возвращают результат после проверки данных, который всегда представляет «ИСТИНА» либо «ЛОЖЬ», что означает – результат удовлетворяет заданному условию либо не удовлетворяет, соответственно.

Прежде чем перейти к рассмотрению описанных функций, ознакомьтесь со статьей нашего сайта Условия сравнения чисел и строк в Excel.

В описаниях синтаксиса функций их аргументы, которые заключены в квадратные скобки «[]», являются необязательными.

Будут рассмотрены следующие функции:

Функция ИСТИНА

Не принимает никаких аргументов и просто возвращает логическое значение «ИСТИНА».

Синтаксис: =ИСТИНА()

Функция ЛОЖЬ

Аналогична функции ИСТИНА, за исключением то, что возвращает противоположный результат ЛОЖЬ.

Синтаксис: =ЛОЖЬ()

Функция И

Возвращает логическое значение ИСТИНА, если все аргументы функции вернули истинное значение. Если хотя бы один аргумент возвращает значение ЛОЖЬ, то вся функция вернет данное значение.

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

Рассмотрим таблицу истинности данной функции:

И ИСТИНА ЛОЖЬ
ИСТИНА ИСТИНА ЛОЖЬ
ЛОЖЬ ЛОЖЬ ЛОЖЬ

Синтаксис: =И(Логическое_значение1; [Логическое_значение1];…)

Пример использования:

В первом примере видно, что все аргументы возвращают истинное значение, следовательно, и сама функция вернет истинный результат.

пример использования функции И

Во втором примере функция никогда не вернет значение ИСТИНА, т.к. условие ее второго аргумента заранее неравно.

заведомо ложное условие аргумента функции И

Функция ИЛИ

Возвращает логическое значение ИСТИНА, если хотя бы один аргумент функции вернет истинное значение.

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

Таблица истинности функции ИЛИ:

ИЛИ ИСТИНА ЛОЖЬ
ИСТИНА ИСТИНА ИСТИНА
ЛОЖЬ ИСТИНА ЛОЖЬ

Синтаксис: =ИЛИ(Логическое_значение1; [Логическое_значение2];…)

В качестве примера, рассмотрите примеры функции И, все они вернут результат ИСТИНА, т.к. первый аргумент является истинным.

Функция НЕ

Принимает в виде аргумента всего одно логическое значение и меняет его на противоположное, т.е. значение ИСТИНА она изменит на ЛОЖЬ и наоборот.

Таблица истинности функции И с применением функции НЕ:

НЕ(И()) ИСТИНА ЛОЖЬ
ИСТИНА ЛОЖЬ ИСТИНА
ЛОЖЬ ИСТИНА ИСТИНА

Таблица истинности функции ИЛИ с применением функции НЕ:

НЕ(ИЛИ()) ИСТИНА ЛОЖЬ
ИСТИНА ЛОЖЬ ЛОЖЬ
ЛОЖЬ ЛОЖЬ ИСТИНА

Синтаксис: =НЕ(логическое_значение)

Функция ЕСЛИ

Является одной из самых полезных, имеющихся в Excel, функций. Она проверяет результат переданного ей логического выражения и возвращает результаты в зависимости от того истинно он или ложно.

Синтаксис:

=ЕСЛИ(Логическое_выражение;[Значение_если_истина];[Значение_если_ложь])

Примеры использования функции:

Рассмотрим первый простой пример, чтобы понять, как функция работает.

Умышлено в первый аргумент функции вставить функцию ИСТИНА. В результате проверки, будет возвращен 2 аргумент (значение_если_истина), 3 аргумент будет опущен.

пример использования функции ЕСЛИ

Теперь приведем пример использования вложенности одной функции ЕСЛИ в другую. Такой подход может понадобиться, когда при выполнении (или невыполнении) одного условия требуется дополнительная проверка.

Условия примера:

Имеются банковские карточки с номерами, начинающимися с первых четырех цифр, которые являются идентификатором вида карты:

  • 1111 – Visa;
  • 2222 – Master Card.

Используем нашу функцию для определения типа карты.

вложение функции ЕСЛИ

Функция, применяемая в данном примере, выглядит так:

=ЕСЛИ(ЛЕВСИМВ(A2;4)="1111"; "Visa";ЕСЛИ(ЛЕВСИМВ(A2;4)="2222";"Master Card";"карта не определена"))

Помимо самой рассматриваем функции, в примере используется текстовая функция ЛЕВСИМВ, которая возвращает часть текста из строки, начиная с левого края, в количестве символов, заданном вторым ее аргументом. С ее помощью мы проверяем, являются ли они равными строке «1111», если да, возвращаем результат «Visa», если нет, то выполняем вложенную функцию ЕСЛИ.

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

Функция ЕСЛИОШИБКА

Предназначена для проверки возврата выражением ошибки. Если ошибка обнаружена, то она возвращает значение второго аргумента, иначе первого.

Функция принимает 2 аргумента, все они являются обязательными.

Синтаксис: =ЕСЛИОШИБКА(значение;значение_если_ошибка)

Пример использования функции:

В приведенном примере видно, что выражение в первом аргументе возвращает ошибку деления на ноль, но так как оно вложено в нашу функцию, то ошибка перехватывается и подменяется вторым аргументов, а именно строкой «Делить на ноль нельзя», которую мы ввели самостоятельно. Вместо данной строки могли бы быть другие функции, все зависит от поставленной перед Вами задачи.

Использование функции ЕСЛИОШИБКА

Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы мы могли развивать его дальше.

Комментарии  

-3 # Антон Александрович 06.06.2016 06:37
Здравствуйте!
Подскажите, необходимо сравнить числа в 2 столбиках в Excel, допустим столбцы A и B. Необходим результат, чтобы если два числа будут равны друг другу в столбце C выводилось значение "Истина", если больше или меньше "Ложь". Заранее спасибо!
0 # Андрей 06.06.2016 08:06
Добрый день!
Достаточно написать в ячейке C1 формулу =A1=B1, а затем протянуть ее на необходимое количество строк вниз.
-2 # Наталья1985 12.05.2016 15:14
Подскажите, почему после ввода функции значение не выводится, хотя все сделано верно и ошибок он не выдает. Функция следующая:
=ЕСЛИ(M3>=49;"в.ур.";ЕСЛИ(И(M3>=45;M3=40;M3=34;M3=25;M3
-3 # Андрей 12.05.2016 16:13
Наталья, т.к. формула не отображается в комментарии правильно, то вышлите Ваш пример на почту, указанную в контактах.
-1 # Вячеслав 17.02.2016 13:19
день добрый!
Прошу уточнить, как построить формулу условия, если необходимо: если значение (дата, время) попадает в интервал, то значение истина, если не попадает, то значение ложно. пример:
если 14:00>=12:00>=1 0:00 - истина
если 14:00>=17:00>=1 0:00 - ложь
-2 # Андрей 17.02.2016 14:01
Запишите два условия с использованием функции И().
-3 # Ксения 01.02.2016 17:26
Есть комплектации и цвета и серийныхе номера в одной таблице и в другой только комплектации и цвета. Как серийные номера согласно комплектация и цветам подтянуть во во вторую таблицу?
-2 # Андрей 01.02.2016 17:55
Создайте ключ из двух столбцов, а затем примените функцию ВПР.
+2 # Светлана 24.01.2016 17:43
Какую функцию использовать и как решить задачу? Посчитать количество игроков, у которых рост >170 или год рождения
-4 # Андрей 24.01.2016 21:38
Светлана, используйте статистическую функцию СЧЕТЕСЛИ для одного условия или СЧЕТЕСЛИМН для нескольких условий.
Описание этих функцию можно найти на этом сайте.
-4 # Екатерина 23.01.2016 17:29
Здравствуйте! Подскажите, пожалуйста, какой формулой мне необходимо воспользоваться для решения такой задачи:
Если выполняется условие в ячейке А1 значение ="x", а в ячейке В1 выполняется условие "y", то присвоить ячейке D5 значение ячейки C1?
-2 # Андрей 23.01.2016 18:41
Добрый день, Екатерина.
Используйте функцию ЕСЛИ с вложением функции И в логическое условие.
-1 # Рустам 30.11.2015 20:27
Как сделать
А=В если только А изменится до изменения В пустая клетка
-2 # Андрей 30.11.2015 21:17
Если нужно отслеживать изменение в ячейке, то это реализуется с помощью макросов.
-2 # Евгений 30.11.2015 10:57
Подскажите как быть если нужнно проверять условие по дате; если до 20.09.2015 А=ЗАО если после А=АО? ячейки в формате даты почему то не воспринимает
-4 # Андрей 30.11.2015 11:34
Евгений, проблема в итоге в чем? В формате дат или непонимании как пишется формула?
-2 # Евгений 30.11.2015 13:02
проблема в том что если я указываю дату как условие, или ячейку с датой, то формула не работает) формулу я вроде пишу верно:

=ЕСЛИ(C3>C4;"АО";"ЗАО")
-1 # Андрей 30.11.2015 13:45
Скорее всего у Вас дата записана как текст - такое бывает. Измените формат ячейки на дату и внесите значение повторно. Если не поможет, то скидывайте файл и описание на почту, указанную в контактах.
-3 # Евгений 30.11.2015 15:36
Да, все получилось когда изменил формат ячейки. А если я хочу указать конкретную дату в формуле, в каком формате ее записывать?
-3 # Андрей 30.11.2015 15:42
Можно числом, можно с использованием функции ДАТА. Экспериментируй те)))
+1 # Ирина 20.10.2015 00:14
Имею 20 отдельных файлов (по кол-ву организаций). В каждом на стр1 в ячейке Р8 содержится текстовая информация - названия групп (гр.№33 и т.д.)Как мне в отчетном файле (21-м)в ячейке Р8 собрать все тексты (н-р: гр.№31, гр№33, гр.№36 и т.д.)
+1 # Андрей 20.10.2015 08:45
Используйте текстовую функцию СЦЕПИТЬ.
+1 # Вячеслав 14.09.2015 10:47
Подскажите. пожалуйста
есть ряд данных: 3б 2н 1б 0 1о
в первой клетке может стоять, например 1н
как написать функцию, которая будет считать в ряду количество б, н и о по отдельности. Спасибо
+1 # Андрей 14.09.2015 19:08
Вячеслав, используйте функцию СЧЕТЕСЛИ. Она описана в статье про статистические функции.
+2 # Вячеслав 15.09.2015 06:18
функция СЧЕТЕСЛИ:
=СЧЁТЕСЛИ(C10:AG10;"б")
увеличивает на 1, если истина,
а мне надо на число, которое стоит перед "б".
Как это организовать?
+1 # Андрей 15.09.2015 08:48
Здесь может быть несколько решений. Выбор любого из них зависит от исходных данных. Как мне видится сейчас, потребуется преобразование текстовых значений ряда данных - удаление букв. Затем произвести подсчет с помощью СУММ.
Это можно сделать добавлением дополнительных столбцов либо 1 функцией массива.
Рекомендую ознакомиться с текстовыми функциями и функциями массивов. Если останутся вопросы, пишите на электронную почту, указанную в контактах.
-2 # Николай 08.09.2015 07:24
Имею такую задачу: Дают Файл ексель с полным названием стран а надо чтоб функция делала сокращеную... =ЕСЛИ(ЛЕВСИМВ(A 5;20)="Australi a";"AU";ЕСЛИ(ЛЕ ВСИМВ(A5;20)="A ustria";"AT";ЕС ЛИ(ЛЕВСИМВ(A5;2 0)="Azerbaijan" ;"AZ";ЕСЛИ(ЛЕВС ИМВ(A5;20)="Alb ania";"AL";)))) Пока начал писать такую функцию.. Есть ли проще Вариант решения задачи ? Возможно готовый для таких заданий.. ато 256 стран набирать не охото ?
+4 # Андрей 08.09.2015 09:10
Добрый день!
У задачи должно быть другое решение. Попробуйте создать список на отдельном листе, где будут сопоставлены страны с их сокращениями. Затем используйте функцию ВПР, чтобы подтянуть к странам короткое название.

Зачем Вы используете функцию ЛЕВСИМВ?
0 # Николай 08.09.2015 17:17
Спас меня ! :) Супер Благодарю!
+2 # Андрей 13.08.2015 10:07
Здравствуйте!
Функция проверки, какое значение стоит в ячейке G1. При G1 от 1 до 8 всё хорошо, добавляю дальше G1=9 выскакивает ошибка. Хотя в справке написано, что можно использовать до 64 вложенных друг в друга функций ЕСЛИ.
=ЕСЛИ(G1=1;J24/3;ЕСЛИ(G1=2;J24/3*2;ЕСЛИ(G1=3;J24;ЕСЛИ(G1=4;J24+K24/3;ЕСЛИ(G1=5;J24+K24/3*2;ЕСЛИ(G1=6;J24+K24;ЕСЛИ(G1=7;J24+K24+L24/3;ЕСЛИ(G1=8;J24+K24+L24/3*2))))))))
0 # Андрей 13.08.2015 23:10
Добрый день!

Скорее всего Вы запутались в простановке скобок.

Готовый вариант:
=ЕСЛИ(G1=1;J24/3;ЕСЛИ(G1=2;J24/3*2;ЕСЛИ(G1=3;J24;ЕСЛИ(G1=4;J24+K24/3;ЕСЛИ(G1=5;J24+K24/3*2;ЕСЛИ(G1=6;J24+K24;ЕСЛИ(G1=7;J24+K24+L24/3;ЕСЛИ(G1=8;J24+K24+L24/3*2;ЕСЛИ(G1=9;"Значение 9";"Иное значение")))))) )))
+2 # Владимир 17.07.2015 10:36
Добрый день. подскажите вот функция:
ЕСЛИ($B42="";0;$F41*$G42;ЕСЛИ($B43="";0;$F41*$G43;ЕСЛИ($B44="";0;$F41*$G44)))))
пишет что много аргументов;
Вообще необходимо чтоб при подставленный значения Х в яейку В42,В43, и В44 значение в яч F41 * на G42 g43 g44. в чем ошибка
0 # Андрей 17.07.2015 23:20
У Вас ошибка в простановке скобок. И для каждого ЕСЛИ используется только 2 аргумента, а Вы используете 3.
Опишите словами, какую конструкцию Вы хотите построить.
+2 # Кира 30.04.2015 08:24
Подскажите как увеличить кол-во вариантов. Например-
если А1=1 то С1=хорошо,
если А1=2 то С1=плохо,
если А1=3 то С1=ваще зашибись,
если А1=4 то С1=нейтрально.
Спс за внимание.
0 # Андрей 30.04.2015 21:51
Кира, Вы уже сами все написали)))
Вложите каждое дополнительное ЕСЛИ в аргумент, где указывается значение для ЛОЖЬ.
-1 # Кира 30.04.2015 23:10
Странно, но вчера не получалось. Наверно путаница со скобками. Главное надо было услышать что решение есть (для уверенности), и добиваться))) Спасибки Вам Андрей!
-1 # Lempompusik 16.04.2015 14:08
Здравствуйте! Подскажите пожалуйста как задать формулу мне надо так чтобы когда вписываешь в ячейке допустим А1 цифру 72705 а в ячейке D1 пишет ТАРА, когда вписываешь в этой же ячейке А1 72420 отображается в ячейке D1 МКР
-1 # Андрей 16.04.2015 20:14
Добрый день!
Вам понадобится написать 2 функции ЕСЛИ для 2х условий, где в качестве аргумента ЗНАЧЕНИЕ_ЕСЛИ_Л ОЖЬ первой функции вписать вторую. Пример:
ЕСЛИ(условие1;значение_если_истина;если(условие2;значение_если_истина2;"значение не определено"))
-1 # Дарья 23.01.2015 10:36
действительно, ОЧЕНЬ полезная информация!
подскажите пож-та можно ли прописать условие для даты?
например, "дата заказа" - не ограничена, но "дата вывоза" должна включать не более/равно 15 вывозов в день. как задать ограничение и чтобы при более 16 вывозов на одну дату, автоматически присваивало следующий день? или это не возможно.
-1 # Андрей 23.01.2015 13:36
Дарья, чтобы дать Вам подсказку необходимо знать структуру таблицы и решение принимать, исходя из нее.
С ходу могу предположить, что потребуется финкция СЧЕТЕСЛИ для подсчета с нарастанием кол-ва вывозов по дню. А исходя из полученного значения, делить на 15 и округлять значение до меньшего. Таким образом можно получить число дней, на которые требуется скорректировать исходную дату вывоза.
Если не получится самостоятельно, то напишите мне в соц.сетях (https://vk.com/morinman), попробую помочь разобраться.
+3 # Дарья 20.01.2015 21:59
Здравствуйте! Никак не пойму, как используя функцию ЕСЛИ (или нужно использовать какую-то другую функцию?) можно сделать отбор по таким параметрам:
Есть таблица с артикулом товара и его ценой. Необходимо проставить такие данные

Стоимость артикула группа
от до
0 800 A
800 1425 B
больше 1425 C

Помогите, пожалуйста. Заранее спасибо
+2 # Андрей 20.01.2015 22:33
Здравствуйте, Дарья!
Использовать нужно именно функцию ЕСЛИ, только для указания границ диапазона использовать в логическом условии функцию И. Для проверки удовлетворения последующих условий, вкладывать в аргумент "если_ложь" новые функции ЕСЛИ.
-1 # Экономист-777 20.01.2015 15:27
По вашим рекомендациям научился записывать макросы и многое другое, что значительно упростило работу. Но не смог найти подходящую функцию, которая смогла бы суммировать все значения по определенному ключу (плохо ориентируюсь еще). Например в ведомости на зарплату сотрудник "Иванов" имеет, помимо оклада, много других выплат. Мне нужно посчитать итог по этому сотруднику. При этом список огромен, сотрудников много и нужно посчитать зарплату каждого. Подскажите пожалуйста способ, если есть, это сделать
+4 # Андрей 20.01.2015 17:30
Для суммирования по условию воспользуйтесь математическими функциями СУММЕСЛИ или СУММЕСЛИМН. Описания и примеры приведены на нашем сайте на данной странице http://office-menu.ru/index.php/uroki-excel/13-uverennoe-ispolzovanie-excel/39-matematicheskie-funktsii-excel#sum
0 # Экономист-777 22.01.2015 10:25
Спасибо, все получилось как хотел)))))
+2 # Экономист-777 15.01.2015 15:35
Спасибо, очень много полезной информации. Можно-ли задавать вопросы в случае ошибок?
+5 # Андрей 15.01.2015 15:56
Спасибо за положительный отзыв. Если имеются вопросы, Вы можете их задать.

У Вас недостаточно прав для комментирования.