Сложные функции в excel
Содержание:
- Проверка условия для полного совпадения текста (ЕСЛИ + СОВПАД)
- Как получить N-е слово из текста.
- Практический пример использования логических функций
- Как работает функция?
- Примеры использования логических функций ИСТИНА, ЛОЖЬ и НЕ в Excel
- Операторы ЕСЛИ и ЕСЛИОШИБКА
- Статистические и логические функции в Excel
- Функция ЕСЛИ
- Использование логических функций в Excel
- Как использовать функцию ЕСЛИ с И, ИЛИ и НЕ в Excel?
- Логические функции в Excel и примеры решения задач
- Использование логических функций в Excel
- Извлекаем слово, содержащее определенный символ.
- Простейший пример применения.
- Cинтаксис.
- Производим вычисления по условию.
- Формула ЕСЛИ в Excel – примеры нескольких условий
Проверка условия для полного совпадения текста (ЕСЛИ + СОВПАД)
Совпадение с текстом – одно из наиболее часто используемых условий в Excel
Во время проверки нужно обратить особое внимание на регистр текста, потому что он не учитывается функцией ЕСЛИ. Чтобы проверять регистр текста, необходимо использовать абсолютно другие функции
В целом, для проверки соответствия переменной текстовой строке необходимо использовать логический оператор =. Общая функция выглядит следующим образом: =ЕСЛИ(G2=”выполнено”,ИСТИНА,ЛОЖЬ).
В этом случае строки могут быть записаны в разном регистре, и этот фактор не будет учитываться в функции ЕСЛИ. А что делать, если нужно проверить именно на разность регистров букв? Для этого вместо оператора = нужно использовать функцию СОВПАД, которая проверяет, являются ли текстовые строки идентичными.
Сама функция работает следующим образом: она смотрит на текстовую строку 1, текстовую строку 2. Если они полностью совпадают, то она передает в ячейку или в аргумент функции значение ИСТИНА. Если же в результате анализа строк обнаруживается хотя бы одно различие, функция возвращает значение ЛОЖЬ.
Чтобы передать функцию СОВПАД функции ЕСЛИ, необходимо её использовать в качестве первого аргумента. Например, формула может иметь следующий вид: =ЕСЛИ(СОВПАД(G2,”Выполнено”),”Да”,”Нет”). Как мы видим в этом примере, эта формула понимает, что строки “ВЫПОЛНЕНО” и “выполнено” не являются идентичными.
Эта функция будет полезна, например, если вам нужно сравнить артикулы товаров или выполнить любое другое действие, требующее различения строк по регистру.
Как получить N-е слово из текста.
Этот пример демонстрирует оригинальное использование сложной формулы ПСТР в Excel, которое включает 5 различных составных частей:
- ДЛСТР — чтобы получить общую длину.
- ПОВТОР — повторение определенного знака заданное количество раз.
- ПОДСТАВИТЬ — заменить один символ другим.
- ПСТР — извлечь подстроку.
- СЖПРОБЕЛЫ — удалить лишние интервалы между словами.
Общая формула выглядит следующим образом:
Где:
- Строка — это исходный текст, из которого вы хотите извлечь желаемое слово.
- N – порядковый номер слова, которое нужно получить.
Например, чтобы вытащить второе слово из A2, используйте это выражение:
Или вы можете ввести порядковый номер слова, которое нужно извлечь (N) в какую-либо ячейку, и указать эту ячейку в формуле, как показано на скриншоте ниже:
Как работает эта формула?
По сути, Excel «оборачивает» каждое слово исходного текста множеством пробелов, находит нужный блок «пробелы-слово-пробелы», извлекает его, а затем удаляет лишние интервалы. Чтобы быть более конкретным, это работает по следующей логике:
ПОДСТАВИТЬ и ПОВТОР заменяют каждый пробел в тексте несколькими. Количество этих дополнительных вставок равно общей длине исходной строки: ПОДСТАВИТЬ($A$2;» «;ПОВТОР(» «;ДЛСТР($A$2)))
Вы можете представить себе промежуточный результат как «астероиды» слов, дрейфующих в пространстве, например: слово1-пробелы-слово2-пробелы-слово3-… Эта длинная строка передается в текстовый аргумент ПСТР.
- Затем вы определяете начальную позицию для извлечения (первый аргумент), используя следующее уравнение: (N-1) * ДЛСТР(A1) +1. Это вычисление возвращает либо позицию первого знака первого слова, либо, чаще, позицию в N-й группе пробелов.
- Количество букв и цифр для извлечения (второй аргумент) — самая простая часть — вы просто берете общую первоначальную длину: ДЛСТР(A2).
- Наконец, СЖПРОБЕЛЫ избавляется от начальных и конечных интервалов в извлечённом тексте.
Приведенная выше формула отлично работает в большинстве ситуаций. Однако, если между словами окажется 2 или более пробелов подряд, это даст неверные результаты (1). Чтобы исправить это, вложите еще одну функцию СЖПРОБЕЛЫ в ПОДСТАВИТЬ, чтобы удалить лишние пропуски между словами, оставив только один, например:
Следующий рисунок демонстрирует улучшенный вариант (2) в действии:
Если ваш исходный текст содержит несколько пробелов между словами, а также очень большие или очень короткие слова, дополнительно вставьте СЖПРОБЕЛЫ в каждое ДЛСТР, чтобы вы были застрахованы от ошибки:
Я согласен с тем, что это выглядит немного громоздко, но зато безупречно обрабатывает все возможные варианты.
Практический пример использования логических функций
В примере ниже попробуем частично использовать описанные выше функции для решения задачи, приближенной к реальной ситуации с расчетом премии, зависящей от определенных условий.
В качестве исходных данных – таблица со сведениями о работниках, в которой указан их пол и возраст.
Нам необходимо произвести расчет премии. Ключевые условия, от которых зависит размер премии:
- величина обычной премии, которую получат все сотрудники без исключения – 3 000 руб.;
- сотрудницам женского пола положена повышенная премия – 7 000 руб.;
- молодым сотрудникам (младше 1984 г. рождения) положена повышенная премия – 7 000 руб.;
Выполним необходимые расчеты, используя логические функции.
Встаем в первую ячейку столбца, в которой хотим посчитать размеры премий и щелкаем кнопку “Вставить функцию” (слева от сроки формул).
В открывшемся Мастере функций выбираем категорию “Логические”, затем в предложенном перечне операторов кликаем по строке “ЕСЛИ” и жмем OK.
Теперь нам нужно задать аргументы функции. Так как у нас не одно, а два условия получения повышенной премии, причем нужно, чтобы выполнялось хотя бы одно из них, чтобы задать логическое выражение, воспользуемся функцией ИЛИ. Находясь в поле для ввода значения аргумента “Лог_выражение” кликаем в основной рабочей области книги на небольшую стрелку вниз, расположенную в левой верхней части окна программы, где обычно отображается адрес ячейки. В открывшемся списке функций выбираем оператор ИЛИ, если он представлен в перечне (или можно кликнуть на пункт “Другие функции” и выбрать его в новом окне Мастера функций, как мы изначально сделали для выбора оператора ЕСЛИ).
Мы переключимся в окно аргументов функци ИЛИ
Здесь задаем наши условия получения премии в 7000 руб.:
год рождения позже 1984 года;
пол – женский;
Теперь обращаем внимание на строку формул. Кликаем в ней на название первоначального оператора ЕСЛИ, чтобы переключиться в аргументы этой функции.
Заполняем аргументы функции и щелкаем OK:
в значении “Истина” пишем цифру 7000;
в значении “Ложь” указываем цифру 3000;
Результат работы логических операторов отобразится в первой ячейке столбца, которую мы выбрали
Как мы можем видеть, окончательный вид формулы выглядит следующим образом: =ЕСЛИ(ИЛИ(C2>1984;D2=»жен.»);7000;3000) . Кстати, вместо использования Мастера функций можно было вручную составить и прописать данную формулу в требуемой ячейке.
Чтобы рассчитать премию для всех сотрудников, воспользуемся Маркером заполнения. Наведем курсор на правый нижний угол ячейки с формулой. После того, как курсор примет форму черного крестика (это и есть Маркер заполнения), зажимаем левую кнопку мыши и протягиваем выделение вниз, до последней ячейки столбца.
Все готово. Благодаря логическим операторам мы получили заполненные данные для столбца с премиями.
Как работает функция?
С одним условием
После проверки ячейки А1 оператор сравнивает ее с числом 70 (100). Это заданное условие. Когда значение больше 50 (130), появляется правдивая надпись «больше 50». Нет – значит, «меньше или равно 130».
Пример посложнее: необходимо из таблицы с баллами определить, кто из студентов сдал зачет, кто – идет на пересдачу. Ориентир – 75 баллов (76 и выше – зачет, 75 и ниже – пересдача).
В первой ячейке с результатом в правом углу есть маркер заполнения – протянуть полученное значение вниз для заполнения всех ячеек.
С несколькими условиями
Синтаксис:
=ЕСЛИ(заданный_критерий;значение_если_результат_соответствует_критерию;ЕСЛИ(заданный_критерий;значение_если_результат_соответствует_критерию;значение_если_результат_не_соответствует_критерию))
Здесь проверяется два параметра. Когда первое условие верно, оператор возвращает первый аргумент – ИСТИНУ. Неверно – переходит к проверке второго критерия.
Нужно выяснить, кто из студентов получил «отлично», «хорошо» и «удовлетворительно», учитывая их баллы:
- В выделенную ячейку вписать формулу =ЕСЛИ(B2>90;»Отлично»;ЕСЛИ(B2>75;»Хорошо»;»Удовлетворительно»)) и нажать на кнопку «Enter». Сначала оператор проверит условие B2>90. ИСТИНА – отобразится «отлично», а остальные критерии не обработаются. ЛОЖЬ – проверит следующее условие (B2>75). Если оно будет правдиво, то отобразится «хорошо», а ложно – «удовлетворительно».
- Скопировать формулу в оставшиеся ячейки.
Также формула может иметь вид =ЕСЛИ(B2>90;»Отлично»;ЕСЛИ(B2>75;»Хорошо»;ЕСЛИ(B2>45;»Удовлитворительно»))), где каждый критерий вынесен отдельно.
Можно делать любое количество вложений ЕСЛИ (до 64-х), но рекомендуется использовать до 5-ти, иначе формула будет слишком громоздкой и разобраться в ней будет уже очень сложно.
С несколькими условиями в математических выражениях
Есть таблица со стоимостью за единицу продукта, которая меняется в зависимости от его количества.
Цель – вычесть стоимость для любого количества продуктов, введенного в указанную ячейку. Количество – ячейка B8.
Формула для решения данной задачи принимает вид =B8*ЕСЛИ(B8>=101;12;ЕСЛИ(B8>=50;14;ЕСЛИ(B8>=20;16;ЕСЛИ(B8>=11; 18;ЕСЛИ(B8>=1;22;»»))))) или =B8*ЕСЛИ(B8>=101;B6;ЕСЛИ(B8>=50;B5;ЕСЛИ(B8>=20;B4;ЕСЛИ(B8>=11;B3;ЕСЛИ(B8>=1;B2;»»))))).
Было проверено несколько критериев и выполнились различные вычисления в зависимости от того, в какой диапазон суммы входит указанное количество продуктов.
С операторами «и», «или», «не»
Синтаксис выглядит так:
=ЕСЛИ(И(один_критерий;второй_критрий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
=ЕСЛИ(ИЛИ(один_критерий;второй_критрий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
=ЕСЛИ(НЕ(критерий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
Операторы «и», «или» теоретически могут проверить до 255 отдельных критериев, но такое количество сложно создавать, тестировать и изменять, поэтому лучше использовать до 5-ти. А «нет» – только один критерий.
Для проверки ячейки на наличие символов
Пустые двойные кавычки в формуле означают «ничего». То есть: если в A2 нет символов, программа выводит текст «пустая», в противном случае будет «не пустая».
Для проверки ячейки ЕСЛИ часто используется в одной формуле c функцией ЕПУСТО (вместо пустых двойных кавычек).
Когда один из аргументов не вписан в формулу
Как вариант – можно вставить в ячейку пустое значение в виде двойных кавычек.
И все-таки лучше использовать оба аргумента.
Примеры использования логических функций ИСТИНА, ЛОЖЬ и НЕ в Excel
Пример 1. В таблице Excel хранятся телефонные номера различных организаций. Звонки на некоторые из них являются бесплатными (с кодом 8800), на остальные – платные по тарифу 1,5 руб/мин. Определить стоимость совершенных звонков.
В столбце «Бесплатный» отобразим логические значения ИСТИНА или ЛОЖЬ по следующему условию: является ли код номера телефона равным «8800»? Введем в ячейку C3 формулу:
- ЛЕВСИМВ(B3;4)=»8800″ – условие проверки равенства первых четырех символов строки указанному значению («8800»).
- Если условие выполняется, функция ИСТИНА() вернет истинное логическое значение;
- Если условие не выполнено, функция ЛОЖЬ() вернет ложное логическое значение.
Аналогично определим является ли звонок бесплатным для остальных номеров. Результат:
Для расчета стоимости используем следующую формулу:
- C3=ИСТИНА() – проверка условия «является ли значение, хранящееся в ячейке C3 равным значению, возвращаемым функцией (логическое истина)?».
- 0- стоимость звонка, если условие выполнено.
- D3*1,5 – стоимость звонка, если условие не выполнено.
Мы получили суммарную стоимость вех совершенных звонков по всем организациям.
Операторы ЕСЛИ и ЕСЛИОШИБКА
Общий синтаксис функции ЕСЛИ представляет собой конструкцию:
=ЕСЛИ(логическое_выражение;значение_если_истина;значение_если-ложь).
Оператор ЕСЛИ используется для построения сложных развернутых логических цепочек. Суть функции – в проверке внесенного в качестве логического выражения условия. Если условие выполняется, и оно истинно, то в качестве результата функции возвращается одно выражение, если же логическое выражение ложно, то в качестве результата функции возвращается другое условие.
Синтаксис оператора ЕСЛИОШИБКА имеет вид:
=ЕСЛИОШИБКА(значение;значение_если_ошибка).
Функция проверяет истинность логического выражения для первого аргумента, и если он соблюдается, то возвращает в качестве результата его значение. Если же выражение ложно, то в качестве результата выдается значение второго аргумента, указанное в функции.
Статистические и логические функции в Excel
Задача 1. Проанализировать стоимость товарных остатков после уценки. Если цена продукта после переоценки ниже средних значений, то списать со склада этот продукт.
Работаем с таблицей из предыдущего раздела:
Для решения задачи используем формулу вида: . В логическом выражении «D2 Задача 2. Найти средние продажи в магазинах сети.
Составим таблицу с исходными данными:
Необходимо найти среднее арифметическое для ячеек, значение которых отвечает заданному условию. То есть совместить логическое и статистическое решение.
Чуть ниже таблицы с условием составим табличку для отображения результатов:
Решим задачу с помощью одной функции: . Первый аргумент – $B$2:$B$7 – диапазон ячеек для проверки. Второй аргумент – В9 – условие. Третий аргумент – $C$2:$C$7 – диапазон усреднения; числовые значения, которые берутся для расчета среднего арифметического.
Функция СРЗНАЧЕСЛИ сопоставляет значение ячейки В9 (№1) со значениями в диапазоне В2:В7 (номера магазинов в таблице продаж). Для совпадающих данных считает среднее арифметическое, используя числа из диапазона С2:С7.
Задача 3. Найти средние продажи в магазине №1 г. Москва.
Видоизменим таблицу из предыдущего примера:
Нужно выполнить два условия – воспользуемся функцией вида: .
Функция СРЗНАЧЕСЛИМН позволяет применять более одного условия. Первый аргумент – $D$2:$D$7 – диапазон усреднения (откуда берутся цифры для нахождения среднего арифметического). Второй аргумент – $B$2:$B$7 – диапазон для проверки первого условия.
Третий аргумент – В9 – первое условие. Четвертый и пятый аргумент – диапазон для проверки и второе условие, соответственно.
Функция учитывает только те значения, которые соответствуют всем заданным условиям.
В данной статье мы разберем сущность логических функций Excel: И, ИЛИ, ИСКЛИЛИ и НЕ. И разберем примеры решения логических функций, демонстрирующие их применение в MS Excel.
Вы узнаете, как расширить использование логических операторов и создать логические проверки для выполнения более сложных вычислений и более эффективного анализа данных. Логические функции, такие как И, ИЛИ, ИСКЛИЛИ и НЕ, помогут вам в этом.
Функция ЕСЛИ
Принцип действия довольно простой. Вы указываете какое-нибудь условие и что нужно делать в случаях истины и лжи.
ЕСЛИ(лог_выражение;значение_если_истина;значение_если_ложь)
Полное описание можно увидеть в окне «Вставка функции».
- Нажмите на иконку
- Выберите категорию «Полный алфавитный перечень».
- Найдите там пункт «ЕСЛИ».
- Сразу после этого вы увидите описание функции.
Далее появится окно, в котором требуется указать «Аргументы функции» (логическое выражение, значение если истина и значение если ложь).
В качестве примера добавим столбец с премией для учителей высшей категории.
Затем необходимо выполнить следующие действия.
- Перейдите на первую ячейку. Нажмите на иконку «Fx». Найдите там функцию «ЕСЛИ» (её можно отыскать в категории «Полный алфавитный указатель»). Затем кликните на кнопку «OK».
- В результате этого появится следующее окно.
- В поле логическое выражение введите следующую формулу.
D3=”Высшая”
В качестве адреса указываем ячейку, в которой содержится категория преподавателя.
- После подстановки вы увидите, что данное выражение ложно.
- Затем указываем значения дли «Истины» и «Лжи». В первом случае какое-то число, а во втором – ноль.
- После этого мы увидим, что логический смысл выражения будет ложным.
- Для сохранения нажимаем на кнопку «OK».
- В результате использования этой функции вы увидите следующее.
В нашей таблице много записей. Нужно сделать так, чтобы на всем диапазоне этого столбца была точно такая же формула, только с поправкой на индекс (номер строки). Для этого выполните следующие шаги.
- Наведите курсор в правый нижний угол первой ячейки.
- Если вы сделали всё правильно, то он превратится в черный крестик.
- Теперь сделайте левый клик мыши и не отпуская палец опуститесь до конца таблицы.
- В результате этого вы увидите следующее.
Благодаря этой формуле произошла выборка нужных учителей и им была начислена премия. В итоге в список попало только два человека, поскольку только у них высшая категория.
В данном случае информации не так много. А теперь представьте, что такая таблица будет огромной. Ведь в организации всегда работает большое количество людей. Если работать в редакторе Word и делать такое сравнение квалификации сотрудников вручную, то кто-нибудь (вследствие ошибок, связанных с человеческим фактором) будет выпадать из списка. Формула в Экселе никогда не ошибется.
Использование условия «И»
Как правило, очень часто приходится использовать различные дополнительные проверки. Например, можно посчитать премию не просто для учителей высшей категории, а конкретно для математиков.
Для этого достаточно выполнить следующие действия.
- Кликните на первую ячейку в столбце «Премия».
- Затем нажмите на иконку «Fx».
- Сразу после этого появится окно с используемой функцией со всеми указанными аргументами. Таким образом редактировать намного проще – непосредственно в ячейке.
- В графе логическое выражение укажите следующую формулу. Для сохранения изменений нажмите на кнопку «OK».
И(D3=”Высшая”;E3=”Математика”)
- Скопируйте эту формулу во все остальные ячейки.
- Теперь премия будет только у одного человека, поскольку только у него высшая категория и он математик.
Использование условия «ИЛИ»
В данном случае мы сможем посчитать премию для всех, у кого первая или вторая категория. То есть наш выбор будет содержать два условия. Для этого нужно сделать следующее.
- Перейдите в первую ячейку.
- Кликните на иконку «Fx».
- Текущее логическое выражение нас не устраивает.
- Нужно будет поменять его на следующее.
ИЛИ(D3=”Первая”;D3=”Вторая”)
- Сразу после этого мы увидим, что у первого преподавателя появилась премия, поскольку у него первая категория.
- Дублируем эту формулу в остальные ячейки.
В результате этого мы увидим следующее.
Благодаря данному оператору мы смогли сделать сложный запрос и рассчитать премию для разной категории сотрудников.
Использование логических функций в Excel
Табличный редактор Эксель – очень гибкий и мощный инструмент для структурированной работы с данными. Среди большого количества его эффективных инструментов стоит отдельно выделить логические операторы, в основе использования которых лежит признание выражения истинным или ложным. Эти функции эффективно встроены в инструментарий формул и позволяют создавать гибкие условия для различных вычислений или заполнения ячеек на основе логических выражений. В данной статье будут описаны основные используемые функции, а также приведен практический пример использования логических операторов в Excel.
Как использовать функцию ЕСЛИ с И, ИЛИ и НЕ в Excel?
В Excel функция ЕСЛИ весьма полезна для проверки того, соответствует ли ячейка условию, и возвращает разные значения на основе оцененных результатов (Истина и Ложь). А комбинируя функцию ЕСЛИ и функции И, ИЛИ, НЕ, он будет изменять условия проверки ячеек. Здесь я расскажу, как использовать функции ЕСЛИ и И, функции ЕСЛИ и ИЛИ, а также объединить несколько функций ЕСЛИ в Excel.
Предположим, у нас есть таблица продаж, как показано на следующем снимке экрана, и теперь мы хотим оценить значения продаж и сгруппировать их как «Необычный,Низкий,СреднийиHigh».
А теперь скопируйте заголовки строк и столбцов в пустой диапазон (диапазон A16: E28 в нашем примере), как показано на следующем снимке экрана.
Как использовать функцию ЕСЛИ в Excel
Основная форма функции ЕСЛИ в Excel показана как: = ЕСЛИ (логический_тест, значение_если истина, значение_если_ ложь)
В нашем случае мы хотим проверить, являются ли объемы продаж Низкими или нет. Если значение в ячейке B2 равно или меньше 80, вернуть текст «Низкий», если значение в ячейке B2 больше 80, вернуть пустое значение.
Введите формулу = ЕСЛИ (B2 <= 80; «Низкий»; «») в ячейку B17, а затем перетащите маркер заполнения в диапазон B17: E28. См. Снимок экрана ниже:
Легко объединяйте несколько листов / книг / файлов CSV в один рабочий лист / книгу
Объединение десятков листов из разных книг в один может оказаться утомительным занятием. Но с Kutools for Excel’s Объединить (рабочие листы и рабочие тетради) утилиту, вы можете сделать это всего за несколько кликов! Полнофункциональная бесплатная 30-дневная пробная версия!
Как использовать функцию If и функцию И в Excel
Если вы хотите проверить, соответствует ли ячейка нескольким условиям одновременно, вы можете объединить функцию ЕСЛИ и функцию И в Excel. Основная форма функции И в Excel: = И (логическая 1, логическая 2, логическая 3,… и т. Д.)
Теперь в нашем случае мы хотим проверить, что объем продаж одновременно больше 80 и меньше 160, если да, то возвращается текст «Середина», а если нет, то пусто.
Введите формулу = ЕСЛИ (И (B2> 80, B2 <160), «Средний», «») в ячейку B17, а затем перетащите маркер заполнения в диапазон B17: E28. См. Снимок экрана ниже:
Как использовать функцию ЕСЛИ и функцию ИЛИ в Excel
Если вы хотите проверить, соответствует ли ячейка одному из нескольких условий, вы можете объединить функцию ЕСЛИ и функцию ИЛИ в Excel.
Основная форма функции ИЛИ в Excel: = ИЛИ (Логическая 1, Логическая 2, Логическая 3,… и т. Д.)
В нашем примере мы хотим узнать необычные объемы продаж, которые больше 180 или меньше 20. Если объемы продаж неординарные, верните текст «Необычные», если нет возврата пустым.
Введите формулу = ЕСЛИ (ИЛИ (B2> 180; B2 <20); «Необычный»; «») в ячейку B17, а затем перетащите маркер заполнения в диапазон B17: E28. См. Снимок экрана ниже:
Как объединить несколько функций ЕСЛИ в одну формулу в Excel
В нашем примере, если вы хотите оценить все объемы продаж с помощью одной формулы, вы можете применить сложную функцию ЕСЛИ.
Если объем продаж равен или меньше 20, вернуть текст «Необычный»; если объем продаж равен или меньше 80, вернуть текст «Низкий»; если равно или меньше 160, вернуть текст «Средний», а если равно или меньше 200, вернуть текст «Высокий».
Введите формулу = ЕСЛИ (B2 <= 20, «Необычный», ЕСЛИ (B2 <= 80, «Низкий», ЕСЛИ (B2 <= 160, «Средний», ЕСЛИ (B2 <= 200, «Высокий», «»))) ) в ячейку B17, а затем перетащите маркер заполнения в диапазон B17: E28. См. Снимок экрана ниже:
Формула слишком сложна для запоминания? Сохраните формулу как запись Auto Text для повторного использования одним щелчком мыши в будущем! Бесплатная пробная версия |
Логические функции в Excel и примеры решения задач
Задача 1. Необходимо переоценить товарные остатки. Если продукт хранится на складе дольше 8 месяцев, уменьшить его цену в 2 раза.
Сформируем таблицу с исходными параметрами:
Чтобы решить поставленную задачу, воспользуемся логической функцией ЕСЛИ. Формула будет выглядеть так: =ЕСЛИ(C2>=8;B2/2;B2).
Логическое выражение «С2>=8» построено с помощью операторов отношения «>» и «=». Результат его вычисления – логическая величина «ИСТИНА» или «ЛОЖЬ». В первом случае функция возвращает значение «В2/2». Во втором – «В2».
Усложним задачу – задействуем логическую функцию И. Теперь условие такое: если товар хранится дольше 8 месяцев, то его стоимость уменьшается в 2 раза. Если дольше 5 месяцев, но меньше 8 – в 1,5 раза.
Формула приобретает следующий вид: =8);B2/2;ЕСЛИ(И(C2>=5);B2/1,5;B2))’ class=’formula’>.
В функции ЕСЛИ можно использовать в качестве аргументов текстовые значения.
Задача 2. Если стоимость товара на складе после уценки стала меньше 300 р. или продукт хранится дольше 10 месяцев, его списывают.
Для решения используем логические функции ЕСЛИ и ИЛИ: =10);»списан»;»»)’ class=’formula’>. Условие, записанное с помощью логической операции ИЛИ, расшифровывается так: товар списывается, если число в ячейке D2 = 10.
При невыполнении условия функция ЕСЛИ возвращает пустую ячейку.
В качестве аргументов можно использовать другие функции. К примеру, математические.
Задача 3. Ученики перед поступлением в гимназию сдают математику, русский и английский языки. Проходной балл – 12. По математике для поступления нужно получить не менее 4 баллов. Составить отчет о поступлении.
Составим таблицу с исходными данными:
Нужно общее количество баллов сравнить с проходным баллом. И проверить, чтобы по математике оценка была не ниже «4». В графе «Результат» поставить «принят» или «нет».
Введем формулу вида: =4;СУММ(B3:D3)>=$B$1);»принят»;»нет»)’ class=’formula’>. Логический оператор «И» заставляет функцию проверять истинность двух условий. Математическая функция «СУММ» используется для подсчета итогового балла.
Функция ЕСЛИ позволяет решать многочисленные задачи, поэтому используется чаще всего.
Использование логических функций в Excel
Табличный редактор Эксель – очень гибкий и мощный инструмент для структурированной работы с данными. Среди большого количества его эффективных инструментов стоит отдельно выделить логические операторы, в основе использования которых лежит признание выражения истинным или ложным. Эти функции эффективно встроены в инструментарий формул и позволяют создавать гибкие условия для различных вычислений или заполнения ячеек на основе логических выражений. В данной статье будут описаны основные используемые функции, а также приведен практический пример использования логических операторов в Excel.
Извлекаем слово, содержащее определенный символ.
В этом примере показана еще одна нестандартная формула Excel ПСТР, которая извлекает слово, содержащее определенную букву или цифру, из любого места:
Предполагая, что исходный текст находится в ячейке A2, и вы хотите получить слово, содержащее символ «$» (цена), выражение принимает следующую форму:
Аналогичным образом вы можете извлекать адреса электронной почты (на основе знака «@»), имена веб-сайтов (на основе «www») и так далее.
Теперь разберём пошагово:
Как и в предыдущем примере, ПОДСТАВИТЬ и ПОВТОР превращают каждый пробел в исходном тексте в несколько, точнее, в 99.
НАЙТИ находит позицию нужного символа (в данном примере $), из которой вы вычитаете 50. Это возвращает вас на 50 позиций назад и помещает где-то в середине блока из 99 пробелов, который предшествует слову, содержащему указанный символ.
МАКС используется для обработки ситуации, когда нужное значение появляется в начале исходного текста. В этом случае результат ПОИСК() — 50 будет отрицательным числом, а МАКС(1, ПОИСК() — 50) заменяет его на 1.
С этой начальной точки ПСТР отбирает следующие 99 знаков и возвращает интересующее нас слово, окруженное множеством пробелов. Как обычно, СЖПРОБЕЛЫ помогает избавиться от лишних из них, оставив только один.
Совет. Если извлекаемый отрезок очень большой, замените 99 и 50 на более крупные числа, например 1000 и 500.
Простейший пример применения.
Предположим, вы работаете в компании, которая занимается продажей шоколада в нескольких регионах и работает с множеством покупателей.
Нам необходимо выделить продажи, которые произошли в нашем регионе, и те, которые были сделаны за рубежом. Для этого нужно добавить в таблицу ещё один признак для каждой продажи – страну, в которой она произошла. Мы хотим, чтобы этот признак создавался автоматически для каждой записи (то есть, строки).
В этом нам поможет функция ЕСЛИ. Добавим в таблицу данных столбец “Страна”. Регион “Запад” – это местные продажи («Местные»), а остальные регионы – это продажи за рубеж («Экспорт»).
Cинтаксис.
Функция ЛЕВСИМВ в Excel возвращает указанное количество символов (подстроку) от начала содержимого ячейки.
Синтаксис следующий:
Где:
- Текст (обязательно) — это текст, из которого вы хотите извлечь подстроку. Обычно предоставляется как ссылка на ячейку, в которой он записан.
-
Второй аргумент (необязательно) — количество знаков для извлечения, начиная слева.
- Если параметр опущен, то по умолчанию подразумевается 1, то есть возвращается 1 знак.
- Если введенное значение больше общей длины ячейки, формула вернет всё ее содержимое.
Например, чтобы извлечь первые 6 символов из A2, запишите такое выражение:
На следующем скриншоте показан результат:
Важное замечание! ЛЕВСИМВ относится к категории текстовых функций, поэтому результатом её всегда является текстовая строка, даже если исходное значение, из которого вы извлекаете цифры, является числом. Если вы работаете с числовым набором данных и хотите, чтобы было извлечено именно число, применяйте ее вместе с функцией ЗНАЧЕН, как показано в одном из примеров ниже. Что еще можно делать, помимо извлечения текста слева? В следующих примерах показано, как можно применять её в сочетании с другими функциями Excel для решения более сложных задач
Что еще можно делать, помимо извлечения текста слева? В следующих примерах показано, как можно применять её в сочетании с другими функциями Excel для решения более сложных задач.
Производим вычисления по условию.
Чтобы выполнить действие только тогда, когда ячейка не пуста (содержит какие-то значения), вы можете использовать формулу, основанную на функции ЕСЛИ.
В примере ниже столбец F содержит даты завершения закупок шоколада.
Поскольку даты для Excel — это числа, то наша задача состоит в том, чтобы проверить в ячейке наличие числа.
Формула в ячейке F3:
Как работает эта формула?
Функция СЧЕТЗ (английский вариант — COUNTA) подсчитывает количество значений (текстовых, числовых и логических) в диапазоне ячеек Excel. Если мы знаем количество значений в диапазоне, то легко можно составить условие. Если число значений равно числу ячеек, значит, пустых ячеек нет и можно производить вычисление. Если равенства нет, значит есть хотя бы одна пустая ячейка, и вычислять нельзя.
Согласитесь, что нельзя назвать этот способ определения наличия пустых ячеек удобным. Ведь число строк в таблице может измениться, и нужно будет менять формулу: вместо цифры 7 ставить другое число.
Давайте рассмотрим и другие варианты. В ячейке F6 записана большая формула -3
Функция ЕПУСТО (английский вариант — ISBLANK) проверяет, не ссылается ли она на пустую ячейку. Если это так, то возвращает ИСТИНА.
Функция ИЛИ (английский вариант — OR) позволяет объединить условия и указать, что нам достаточно того, чтобы хотя бы одна функция ЕПУСТО обнаружила пустую ячейку. В этом случае никаких вычислений не производим и функция ЕСЛИ возвращает пустую строку. В противном случае — производим вычисления.
Все достаточно просто, но перечислять кучу ссылок на ячейки не слишком удобно. К тому же, здесь, как и в предыдущем случае, формула не масштабируема: при изменении таблицы она нуждается в корректировке. Это не слишком удобно, да и забыть можно сделать это.
Рассмотрим теперь более универсальные решения.
В качестве условия в функции ЕСЛИ мы используем СЧИТАТЬПУСТОТЫ (английский вариант — COUNTBLANK). Она возвращает количество пустых ячеек, но любое число больше 0 Excel интерпретирует как ИСТИНА.
И, наконец, еще одна формула Excel, которая позволит производить расчет только при наличии непустых ячеек.
Функция ЕЧИСЛО ( или ISNUMBER) возвращает ИСТИНА, если ссылается на число. Естественно, при ссылке на пустую ячейку возвратит ЛОЖЬ.
А теперь посмотрим, как это работает. Заполним таблицу недостающим значением.
Как видите, все наши формулы рассчитаны и возвратили одинаковые значения.
А теперь рассмотрим как проверить, что ячейки не пустые, если в них могут быть записаны не только числа, но и текст.
Итак, перед нами уже знакомая формула
Для функции СЧЕТЗ не имеет значения, число или текст используются в ячейке Excel.
То же можно сказать и о функции СЧИТАТЬПУСТОТЫ.
А вот третий вариант — к проверке условия при помощи функции ЕЧИСЛО добавляем проверку ЕТЕКСТ (ISTEXT в английском варианте). Объединяем их функцией ИЛИ.
А теперь вставляем в ячейку D5 недостающее значение и проверяем, все ли работает.
Итак, мы с вами убедились, что простая на первый взгляд функция ЕСЛИ дает нам на самом деле много возможностей для операций с данными.
Надеемся, этот материал был полезен. А вот еще несколько примеров работы с условиями и функцией ЕСЛИ в Excel.
Примеры использования функции ЕСЛИ:
Формула ЕСЛИ в Excel – примеры нескольких условий
Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.
Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.
Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются
Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2 =1
Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.
Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН.