Функция IF в Google Sheets - использование и примеры формул

  • Поделись Этим
Michael Brown

Функция IF в Google Sheets - одна из самых простых для изучения функций, и хотя это действительно так, она также очень полезна.

В этом уроке я предлагаю вам подробнее рассмотреть, как работает функция ЕСЛИ в Google Spreadsheet и какие преимущества вы получите от ее использования.

    Что такое функция IF в Google Sheets?

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

    Для этого условие функции должно быть в формате альтернативного вопроса только с двумя возможными ответами: "да" и "нет".

    Вот как может выглядеть дерево решений:

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

    Синтаксис функции IF в Google Sheets

    Синтаксис функции IF и ее аргументов следующий:

    =IF(логическое_выражение, значение_если_истина, значение_если_ложь)
    • логическое_выражение - (требуется) значение или логическое выражение, которое проверяется на то, является ли оно TRUE или FALSE.
    • значение_если_истина - (требуется) операция, которая выполняется, если тест равен TRUE.
    • значение_если_ложно - (необязательно) операция, которая выполняется, если тест FALSE.

    Давайте рассмотрим аргументы нашей функции IF более подробно.

    Первый аргумент представляет собой логический вопрос. Google Sheets отвечает на этот вопрос либо "да", либо "нет", т.е. "истинно" или "ложно".

    Как правильно сформулировать вопрос? Для этого можно написать логическое выражение, используя такие полезные символы (или операторы сравнения), как "=", ">", "=", "<=", "". Давайте попробуем задать такой вопрос вместе.

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

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

    Вот как могут выглядеть данные о продажах в Google Sheets:

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

    И здесь в игру вступает функция IF. Давайте добавим в таблицу данных столбец "Страна". "Западный" регион представляет местные продажи (Наша страна), а остальные - продажи из-за рубежа (Остальной мир).

    Как правильно выписать функцию?

    Установите курсор на F2, чтобы сделать ячейку активной, и введите знак равенства (=). Google Sheets сразу поймет, что вы собираетесь ввести формулу. Поэтому сразу после ввода буквы "i" он предложит вам выбрать функцию, начинающуюся на эту же букву. И вы должны выбрать "ЕСЛИ".

    После этого все ваши действия также будут сопровождаться подсказками.

    Для первого аргумента функции IF введите B2="Запад" Как и в других функциях Google Sheets, вам не нужно вводить адрес ячейки вручную - достаточно щелчка мыши. Затем введите запятую (,) и укажите второй аргумент.

    Второй аргумент - это значение, которое F2 вернет в случае выполнения условия. В данном случае это будет текст "Наша страна".

    И снова, после запятой, напишите значение 3-го аргумента. F2 вернет это значение, если условие не выполнено: "Остальной мир". Не забудьте закончить ввод формулы, закрыв скобки ")" и нажав "Enter".

    Вся ваша формула должна выглядеть следующим образом:

    =IF(B2="Запад", "Наша страна", "Остальной мир")

    Если все правильно, F2 вернет текст "Наша страна":

    Теперь все, что вам нужно сделать, это скопировать эту функцию в столбец F.

    Совет. Есть один способ обработать весь столбец одной формулой. В этом вам поможет функция ARRAYFORMULA. Используя ее в первой ячейке столбца, вы можете проверить все ячейки ниже на одно и то же условие и вернуть соответствующий результат в каждую строку одновременно:

    =ARRAYFORMULA(IF(B2:B69="Запад", "Наша страна", "Остальной мир"))

    Давайте рассмотрим другие способы работы с функцией IF.

    Функция IF и текстовые значения

    Использование функции IF с текстом уже было проиллюстрировано в примере выше.

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

    Функция IF и числовые значения

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

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

    Например, допустим, вы предлагаете своим клиентам различные скидки в зависимости от общей стоимости покупки. Если общая сумма превышает 200, то клиент получает скидку 10%.

    Для этого нужно использовать столбец G и назвать его "Скидка". Затем введите функцию IF в G2, и второй аргумент будет представлен формулой, которая вычисляет скидку:

    =IF(E2>200,E2*0.1,0)

    IF холостые/не холостые

    Бывают случаи, когда результат зависит от того, пуста ячейка или нет. Есть два способа проверить это:

    1. Используйте функцию ISBLANK.

      Например, следующая формула проверяет, пусты ли ячейки в столбце E. Если да, то скидка не должна применяться, в противном случае скидка составит 5%:

      =IF(ISBLANK(E2)=TRUE,0,0.05)

      Примечание. Если есть строка нулевой длины в ячейке (возвращаемой некоторой формулой), функция ISBLANK будет иметь результат FALSE.

      Вот еще одна формула для проверки того, пуст ли E2:

      =IF(ISBLANK(E2)2FALSE,0,0.05)

      Вы можете перевернуть формулу наоборот и посмотреть, не пустые ли ячейки вместо этого:

      =IF(ISBLANK(E2)=FALSE,0.05,0

      =IF(ISBLANK(E2)TRUE,0.05,0)

    2. Используйте стандартные операторы сравнения с парой двойных кавычек:

      Примечание. Данный метод учитывает строки нулевой длины (отмеченные двойными кавычками) как пустые ячейки.

      =IF(E2="",0,0.05) - проверьте, не является ли E2 пустым

      =IF(E2"",0,0.05) - проверить, не пуст ли E2.

      Совет. Аналогичным образом используйте двойные кавычки в качестве аргумента, чтобы вернуть формулой пустую ячейку:

      =IF(E2>200,E2*0,"")

    IF в сочетании с другими функциями

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

    Google Таблицы ЕСЛИ ИЛИ

    Помните первый способ выяснить страну, в которой продается шоколад? Вы проверяли, содержит ли B2 слово "West".

    Однако вы можете построить логику наоборот: перечислите все возможные регионы, которые принадлежат к "Остальному миру", и проверьте, если по крайней мере, один из них появляется в ячейке. В этом вам поможет функция OR в первом аргументе:

    =OR(логическое_выражение1, [логическое_выражение2, ...])
    • логическое_выражение1 - (требуется) первое логическое значение для проверки.
    • логическое_выражение2 - (необязательно) следующее логическое значение для проверки.
    • и так далее.

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

    Чтобы применить эти знания к таблице с продажами, упомяните все регионы, которые относятся к продажам за рубежом, и остальные продажи автоматически станут местными:

    =IF(OR(B2="Восток", B2="Юг"), "Остальной мир", "Наша страна")

    Google Sheets ЕСЛИ И

    Функция AND так же проста. Единственное отличие заключается в том, что она проверяет, истинны ли все перечисленные логические выражения:

    =AND(логическое_выражение1, [логическое_выражение2, ...])

    Например, вам нужно сузить поиск до вашего города, и вы знаете, что в нем в настоящее время покупают только фундук. Поэтому нужно учесть два условия: регион - "Запад" и продукт - "Фундук в шоколаде":

    =IF(AND(B2="Запад",C2="Фундук в шоколаде"), "Наша страна", "Остальной мир")

    Вложенная формула IF против функции IFS для Google Sheets

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

    Предположим, что вы установили более жесткие условия предоставления скидок для своих клиентов. Если общая сумма покупки превышает 200 единиц, они получают скидку 10%; если общая сумма покупки составляет от 100 до 199 единиц, скидка составляет 5%. Если общая сумма покупки меньше 100 единиц, скидка не предоставляется вообще.

    Следующая формула показывает, как функция будет выглядеть в ячейке G2:

    =IF(E2>200,E2*0.1,IF(E2>100,E2*0.05,0))

    Обратите внимание, что в качестве второго аргумента используется другая функция ЕСЛИ. В таких случаях дерево решений выглядит следующим образом:

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

    Чтобы сделать это правильно, добавьте к нашей функции логическое выражение "AND". Тогда формула будет выглядеть следующим образом:

    =IF(AND(B2="East",E2>200),E2*0.1,IF(AND(B2="East",E2>100),E2*0.05,0))

    Как видите, количество скидок значительно сократилось, а их размер остался неизменным.

    Существует также более простой способ написать вышеописанное благодаря функции IFS:

    =IFS(условие1, значение1, [условие2, значение2, ...])
    • условие1 - (требуется) - это логическое выражение, которое вы хотите проверить.
    • значение1 - (требуется) - это значение, которое возвращается, если условие1 истинно.
    • и затем вы просто перечисляете условия с их значениями, которые возвращаются, если они истинны.

    Вот как будет выглядеть приведенная выше формула в IFS:

    =IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05)

    Совет. Если нет истинного условия, формула вернет ошибку #N/A. Чтобы избежать этого, оберните формулу в IFERROR:

    =IFERROR(IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05),0)

    SWITCH как альтернатива нескольким ПЧ

    Есть еще одна функция, которую вы можете рассмотреть вместо вложенного IF: Google Sheets SWITCH.

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

    =SWITCH(expression, case1, value1, [case2, value2, ...], [default])
    • выражение это любая ссылка на ячейку, или диапазон ячеек, или даже фактическое математическое выражение, или даже текст, который вы хотите приравнять к вашим кейсам (или проверить на соответствие критериям). Требуется.
    • случай1 это ваш первый критерий, по которому вы проверяете выражение. Требуется.
    • значение1 это запись, которую нужно вернуть, если случай1 критерий совпадает с вашим выражением. Требуется.
    • случай2, значение2 повторите столько раз, сколько критериев нужно проверить и значений вернуть. Необязательно.
    • по умолчанию также является совершенно необязательным. Используйте его для просмотра конкретной записи, если ни один из случаев не удовлетворяется. Я бы рекомендовал использовать его каждый раз, чтобы избежать ошибок, когда ваше выражение не встречает совпадений среди всех случаев.

    Вот несколько примеров.

    На проверьте свои клетки на соответствие тексту , используйте диапазоны в качестве выражения:

    =ARRAYFORMULA(SWITCH(B2:B69, "Запад", "Наша страна", "Остальной мир"))

    В этой формуле SWITCH проверяет, какая запись находится в каждой ячейке столбца B. Если это Запад , формула гласит Наша страна , иначе, Остальной мир ArrayFormula позволяет обрабатывать весь столбец за один раз.

    На работа с расчетами лучше использовать булево выражение:

    =SWITCH(TRUE,$E2>200,$E2*0.1,AND($E2100),$E2*0.05,0)

    Здесь SWITCH проверяет, является ли результат уравнения TRUE или FALSE . Когда это TRUE (например, если E2 действительно больше, чем 200 ), я получаю соответствующий результат. Если ни один из случаев в списке не является TRUE (то есть они FALSE ), формула просто возвращает 0.

    Примечание. SWITCH не знает, как вычислить весь диапазон сразу, поэтому в этом случае не нужно использовать ARRAYFORMULA.

    Операторы IF, основанные на подсчете

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

    Например, проверьте, встречается ли имя клиента более одного раза в списке (столбец A), и внесите соответствующее слово (да/нет) в ячейку.

    Решение проще, чем вы думаете. Вам нужно ввести функцию COUNTIF в IF:

    =IF(COUNTIF($A$2:$A$20,$A2)>1, "да", "нет")

    Заставьте Google Sheets строить формулы IF за вас - надстройка IF Formula Builder

    Если вы устали следить за всеми этими дополнительными символами и правильным синтаксисом в формулах, есть другое решение.

    Дополнение IF Formula Builder для Google Sheets предлагает визуальный способ создания операторов IF. Инструмент обработает синтаксис, дополнительные функции и все необходимые символы за вас.

    Все, что вам нужно сделать, это:

    • Заполняйте пустые места своими записями по очереди. Никакой специальной обработки для дат, времени и т.д. Вводите их как обычно, и надстройка распознает тип данных.
    • выберите необходимые операторы сравнения из предложенных выпадающих списков.
    • при необходимости добавьте несколько логических выражений одним щелчком мыши: IF OR, IF AND, ELSE IF, THEN IF.

    Как видите, каждое логическое выражение занимает отдельную строку. То же самое относится и к истинным/ложным исходам. Это резко сокращает количество возможных путаниц в формуле.

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

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

    Пожалуйста, посетите онлайн-учебник по IF Formula Builder, чтобы подробно ознакомиться со всеми опциями.

    Надеюсь, теперь не осталось никаких сомнений в том, что функция IF, хотя и очень простая на первый взгляд, открывает двери для многих вариантов обработки данных в Google Sheets. Но если у вас остались вопросы, не стесняйтесь задавать их в разделе комментариев ниже - мы будем рады помочь!

    Майкл Браун — увлеченный технологический энтузиаст, стремящийся упростить сложные процессы с помощью программных инструментов. Имея более чем десятилетний опыт работы в технологической отрасли, он отточил свои навыки в Microsoft Excel и Outlook, а также в Google Sheets и Docs. Блог Майкла посвящен тому, чтобы делиться своими знаниями и опытом с другими, предоставляя простые советы и учебные пособия для повышения производительности и эффективности. Являетесь ли вы опытным профессионалом или новичком, в блоге Майкла вы найдете ценную информацию и практические советы, которые помогут вам максимально эффективно использовать эти важные программные инструменты.