Функция IF - одна из наиболее часто используемых функций в Excel. Он позволяет выполнять только те действия, которые соответствуют заданным вами критериям. Его можно использовать для проверки любого типа условий, включая текстовые условия. Теперь мы рассмотрим использование этой функции в ситуациях, когда критерием является совпадение или несовпадение с определенным текстом.
Сначала дадим общее представление о том, как использовать функцию IF. Это условный оператор, который проверяет, соответствует ли значение определенному критерию. Он содержит три обязательных аргумента:
- Состояние. Это может быть арифметический символ или логическая функция. В любом случае, главное требование к условию - оно должно возвращать TRUE или FALSE.
- Значение, если TRUE. Это текст, который будет выведен на экран, или функция, которая будет выполнена, если значение равно true. Для выполнения многоуровневых проверок можно использовать несколько вложенных функций ЕСЛИ.
- Значение, если FALSE. Это текст, функция или значение любого другого типа, которое будет выведено или выполнено, если критерий, описанный в первом аргументе, не является истинным.
Теперь, когда мы вспомнили синтаксис этой функции, давайте подробнее рассмотрим особенности ее использования с текстовыми значениями.
Проверка условия для полного совпадения текста (ЕСЛИ + СОВПАД)
Сопоставление текста - одно из наиболее часто используемых условий в Excel. При проверке особое внимание следует обратить на регистр текста, так как он не учитывается функцией IF. Чтобы проверить регистр текста, нужно использовать совершенно другую функцию.
В общем случае для проверки соответствия переменной текстовой строке следует использовать логический оператор =. Общая функция заключается в следующем: = IF(G2="satisfied",TRUE,FALSE).
В этом случае строки могут храниться в разных регистрах, и этот фактор не будет учтен в функции IF. Но что, если нам нужно проверить разницу между случаями? Для этого используйте функцию COUNTER вместо оператора = для проверки идентичности текстовых строк.
Не забывайте заключать все текстовые значения в инвертированные запятые.
Сама функция работает следующим образом: она просматривает текстовую строку 1, текстовую строку 2. Если они полностью совпадают, она посылает значение TRUE в ячейку или в аргумент функции. Если анализ строк показывает хотя бы одно различие, возвращается FALSE.
Чтобы передать функцию COUNTER в функцию IF, она должна быть использована в качестве первого аргумента. Например, формула может выглядеть следующим образом: =If(SOUND(G2, "Fulfilled"), "Yes", "No"). Как видно из примера, эта формула понимает, что строки 'DONE' и 'done' не идентичны.
Эта функция полезна, например, когда вам нужно сравнить статьи или выполнить любое другое действие, требующее чувствительных к регистру переносов строк.
Функция ЕСЛИ с частичным совпадением текста
Ранее мы рассмотрели, как сравниваются струны для полного совпадения. Но в некоторых ситуациях достаточно лишь частичного совпадения строки со ссылкой. Например, нам нужен город, но какой город - не так важно. Самый простой способ сделать это - использовать операторы ? i *. Однако это не самая лучшая идея в любой ситуации.
ЕСЛИ + ПОИСК
Один из самых надежных способов сделать это - использовать функцию SEARCH в качестве аргумента функции IF. Он позволяет пользователю указать порядковый номер символа, с которого начинается строка. В общем случае функция выглядит следующим образом: =Поиск(что_искать, где_искать, начать_с_какого_символа_искать).
Третий аргумент является необязательным. Если не указано, поиск будет осуществляться с начала строки. В качестве возвращаемого значения этой функции используется номер символа в начале запрашиваемой строки или код ошибки.
Эта функция должна использоваться в сочетании с другим оператором. Это называется ЧИСТОТА. Его функция заключается в проверке того, является ли определенная переменная числом. Если это так, то ячейке или функции присваивается значение TRUE. Его можно использовать для проверки того, является ли переменная текстовой. Вот как использовать его для наших целей: =If(SEARCH("город",B2)), "Город",").
Эта функция работает по следующему алгоритму: проверяет, является ли значение, возвращаемое функцией поиска, числовым. Если да, то возвращаемое значение будет 'City'. Логика очень проста. Дело в том, что эта функция также фильтрует любой тип данных, кроме текста. Поскольку функция ПОИСК может вернуть ошибку, если нужное число не найдено, функция ЧИСЛО позволяет отфильтровать его. Если функция YEASER сообщает об ошибке, то в качестве аргумента передается пустое значение.
Единственное, о чем следует помнить при использовании этой функции, это то, что данный метод не подходит для обнаружения частичного совпадения с учетом регистра. То есть, этот метод по сути такой же, как и использование знака =, только для частичных совпадений.
ЕСЛИ + НАЙТИ
Если пользователю необходимо сравнить строки также по регистру, то используется другая функция, WHITE. Эта функция работает точно так же, но чувствительна к регистру. Его синтаксис включает следующие аргументы:
- Что искать.
- Где проводится поиск.
- Позиция, с которой производится поиск текста.
Следовательно, применение формулы будет точно таким же. = IF(IF(SEARCH("city",B2)), "City","."). Как видите, функция IF позволяет выполнять множество различных операций. Это одно из основных утверждений Excel, которое позволяет автоматизировать практически все, что только можно.