Господа глубоко проникшие в секреты работы продукта Excel! |
|
vikttur Пользователь Сообщений: 47199 |
Лет несколько тому ZVI мне, непонятливому, объяснял: формула БЕРЕТ данные, обрабатывает, после обработки ВОЗВРАЩАЕТ результат обработки. Мне это слово тоже «противно» (неестественно в данном применении). Возможно, и «...мой мозг как то не так воспринимает информацию«. Видимо, результат неточного перевода с английского. Может, и точного. Стараюсь не использовать. Пример: производство. С конвейера изделие не возвращается, оно СХОДИТ. Это результат обработки ВЗЯТЫХ запчастей и материалов. |
Александр К Пользователь Сообщений: 33 |
#3 27.02.2016 20:04:27
Вон оно как!!!! |
||
Александр К Пользователь Сообщений: 33 |
#4 27.02.2016 20:11:07
Водка с закуской из организма не возвращается, а извергается |
||
vikttur Пользователь Сообщений: 47199 |
Насчет водки — можно сказать, что возвращается. Она до конвейера не дошла |
Александр К, в С-образных языках программирования, которые наиболее популярны сейчас, оператор return; служит для завершения процедуры. Если эта процедура является функцией, оператор выглядит как return value; , где value — выражение, значение которого и является значением функции. Так что «возвращаемое значение» это дословный перевод такой конструкции. Изменено: Казанский — 27.02.2016 20:24:54 |
|
TheBestOfTheBest Пользователь Сообщений: 2366 Excel 2010 +PLEX +SaveToDB +PowerQuery |
#7 27.02.2016 20:24:41
Сама функция ничего не отображает и не показывает, а именно возвращает результат от своей работы, или передает результат своей работы той процедуре, которая эту функцию запускала. ИМХО, «возвращает» — самый точный термин. если учесть что всегда есть процедура, которая эту функцию запускает. Неизлечимых болезней нет, есть неизлечимые люди. |
||
vikttur Пользователь Сообщений: 47199 |
#8 27.02.2016 20:26:56
На что-то типа этого и грешил. Дословный перевод — не всегда точный по смыслу. |
||
Юрий М Модератор Сообщений: 60570 Контакты см. в профиле |
На бытовом уровне можно представить так: мы отправили вопрос — что получится?, а функция вернула нам ответ )) |
vikttur Пользователь Сообщений: 47199 |
#10 27.02.2016 20:44:43 Коту дали рыбу, а вернул он только хвост — вот это правильно!
… мозг противится. Непонятно ему, как функция может ВЕРНУТЬ то, чего не брала? Все это — придумки моего противящегося серого вещества. Надо серьезно подумать: может, в лингвисты податься, дисер защитить? Сколько всяких сумасбродов и демагогов защищаются — и ничего ) |
||
Юрий М Модератор Сообщений: 60570 Контакты см. в профиле |
#11 27.02.2016 21:04:59
И хвост не отдам! Ещё чего!.. |
||
Александр К Пользователь Сообщений: 33 |
#12 27.02.2016 21:19:28
В английском варианте может такая конструкция и верна, Но ответ в русском языке не возвращают, а дают, или выпытывают. |
||
SuperCat Пользователь Сообщений: 2737 |
#13 28.02.2016 11:13:15 Вообще, у слова return много значений. Более подходящие по смыслу слова выделил. return
По правде говоря, и НЕ функция тоже может возвращать значение (смысла в этом, конечно, нет), но при этом компилятор (тестировал на MS C++) выдаёт предупреждение. Код компилируется успешно.
Не, коту дали только хвост, а он вернул целую рыбину! There is no knowledge that is not power |
||||||
Sanja Пользователь Сообщений: 14838 |
#14 28.02.2016 11:29:27
Уже ломают . Сообщение #308 Согласие есть продукт при полном непротивлении сторон. |
||
wowick Пользователь Сообщений: 972 |
ИМХО, это программистская традиция. Есть понятие Процедура(Аргументы) — она берет и обрабатывает эти аргументы и возможно другие данные. Но Процедура не возвращает результат. Она просто что-то обрабатывает. А есть Функция(аргументы). В отличие от процедуры, функция не просто обрабатывает данные, а она еще обязательно возвращает результат своей работы в место, откуда ее вызвали. и сравни с функцией: Если автоматизировать бардак, то получится автоматизированный бардак. |
Skif-F Пользователь Сообщений: 181 |
#16 28.02.2016 16:21:40
Собственно в этом и проблема: вернуть можно только то, что взял, а функция получив одно значение, возвращает (отдаёт, передаёт) другое значение. Однако возникли две идеи: |
||
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
#17 28.02.2016 17:11:17
Видимо, функция берет свой налог за свою работу, поэтому из всех входных данный возвращает лишь их часть(ПСТР, ЛЕВСИМВ, ВПР и т.п.) или вообще переработанный результат(ЧИСТВНДОХ, ПС, ВСД и т.п.) Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||
Александр К Пользователь Сообщений: 33 |
#18 28.02.2016 19:27:47
Уложена на лопатки «мадам логика». |
||
Skif-F Пользователь Сообщений: 181 |
#19 28.02.2016 19:58:51
Причём здесь логика? |
||
SuperCat Пользователь Сообщений: 2737 |
#20 29.02.2016 09:57:43
Какая-то странная логика. А если я пришёл в обувную мастерскую сделать, например, набойки, то набойка — это уже не МОЙ исходный материал. There is no knowledge that is not power |
||
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
#21 29.02.2016 11:51:19
Я и не настаиваю на понимании. Объяснил как это вижу я, не более. Меня слово «возвращает» для функций вполне устраивает и слух не режет. А твоя логика для меня уже вообще давно дремучий лес в некоторых вопросах
если прямой связи нет, значит тот, кто разрабатывал функцию делал её наобум. Т.к. если мы ввели 5 — значит мы и ожидаем какой-то результат именно в зависимости от указанного параметра. А если параметр ни на что не влияет — то нафиг он такой не нужен А если речь про функции вроде АДРЕС — так мы не просто 5 передаем — мы указываем номер строки, столбца и т.д. Или например, функция ДАТА. Принимает три аргумента: год, месяц, день. Мы передаем в качестве аргументов числа и получаем в ответ дату. Но дату слепленную из НАШИХ переданных чисел. Нам их вернули, но в другом виде. Однако есть и моменты, когда возвращает действительно «неуместно». Да хоть ТДАТА или СЛЧИС. Мы вообще ничего не передаем в функцию. Однако она нам что-то «возвращает» Хотя по сути — отдает. Ну в общем я как-то так это вижу. Хотя если бы изначально использовалось отдает или записывает — думаю и это не резало бы слух, т.к. привык. В конце концов мне хоть «пинает» назовите — главное, чтобы результат был Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||||
SuperCat Пользователь Сообщений: 2737 |
Дмитрий, на самом деле некоторые аналоги здесь совсем неуместны. Вот, например, взять кредит). Казалось бы, банк тебе даёт денег и ожидает, что ты «вернёшь» ей ту же сумму, но с лихвой, которую банк не заработал. Можно ли сказать, что ты вернул банку только то, что взял? Или вклады. Получаешь ли ты только то, что ты положил? Просто ты как-то странно выразился «наш материал в ином виде». И не надо забывать, что в теле функций может возникнуть ошибка (исключение), а также не дойти до точки «возврата» вообще (т.е. завершение программы). Тогда в этом случае нельзя сказать, что функция вообще что-то возвращает. Например, почти все Win32-функций не возвращают результат, а «возвращают» код ошибки, а результат «возвращается» вообще через параметр (указатель). There is no knowledge that is not power |
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
#23 29.02.2016 15:10:24 Еще раз: я не претендую на истину в последней инстанции — я высказал как это вижу я. Не надо передергивать. Ты написал мне про набойки — я парировал, высказав видение свое ситуации, отличное от твоего. В своем общении мы тоже применяем слово «вернуть» не всегда с его прямым смыслом. Вот ты упомянул про банки с кредитами: ты часто слышал, чтобы говорили не «вернул кредит», а «я перечислил банку сумму, которую брал в кредит»? Много можно разных ситуаций приводить, которые будут подтверждать и твою и мою точку зрения. И все будет зависеть от того, как мы видим ситуацию и как видят её другие. Мы сами так часто применяем слово вернул, что оно и в жизни-то не всегда отражает действительность. Чего говорить о переводе с другого языка?
Ну да. А ты как-то странно это все перевернул и так и не сказал, что там с твоими «ответными» ботинками — тебе их все-таки вернули или продали, отдали, положили и т.п. Я согласен, что есть случаи, когда функция не возвращает. Но все же случаев с «вернули» больше, чем «дали фиг знает что». Я вот о чем. Посуди: большинство функций все-таки что-то «возвращают». И стандартно в ту ячейку, в которой записаны. Пробуем все это описать. По умолчанию функция записывает(не возвращает) результат в ту ячейку, в которой записана. Немного тафталогии, ну да ладно. Функция записывает результат. Т.е. записывает в ячейку, но ведь она уже сама записана в этой ячейке. Т.е. тогда перезаписывает, если там уже записана формула. Но тогда что перезаписывает? Ведь формула осталась на месте в неизменном виде. Перезаписывает отображаемый в ячейке результат? Похоже, но ведь его изначально могло не быть. Тогда что перезаписывает? Значит не перезаписывает. Тогда отображает. Но если отображает — то как функция ПОИСКПОЗ отображает свой результат, когда вложена в ИНДЕКС? Она же ему ничего не отображает. Она передает в ИНДЕКС результат. Но как тогда она передает результат в ячейку, в которой записана? Она же не передает — она отображает. И т.д. и т.п. Поэтому давай не будем переходить на отстаивание и доказывание своей конкретной позиции, вместо здравого рассуждения по теме. А то сейчас как-то так твои сообщения читаются, что есть два мнения: твое и неверное Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||
Александр К Пользователь Сообщений: 33 |
#24 29.02.2016 17:25:33
Нагрев темы произошел от трения мнений. |
||
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
#25 29.02.2016 18:28:01
Заинтриговали Какое? Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||
Глумиться — рассуждать. |
|
SuperCat Пользователь Сообщений: 2737 |
#27 29.02.2016 20:52:05
Кажется, «учиться» или «узнавать». There is no knowledge that is not power |
||
SuperCat Пользователь Сообщений: 2737 |
Да, Дмитрий, полностью согласен. А то мы договоримся невесть до чего. There is no knowledge that is not power |
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
#29 29.02.2016 21:37:08
А вот это меня всегда радовало в этой песте! Как представлю себе эту «красавицу», у которой глаза размером с семечку, так чувака жалко становится — ему бы к окулисту, а он все по бабам, да по бабам Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
||
SuperCat Пользователь Сообщений: 2737 |
#30 29.02.2016 22:02:30 Так он потому и в шоке, что у неё вместо глаз — два бриллианта There is no knowledge that is not power |
Если вы не знакомы с Excel в Интернете, скоро вы обнаружите, что это не просто сетка, в которую вы вводите числа в столбцах или строках. Да, можно использовать Excel в Интернете для поиска итогов по столбцу или строке чисел, но можно также вычислить платеж по кредиту, решить математические или технические задачи или найти оптимальный сценарий на основе переменных чисел, которые вы подключали.
Excel в Интернете делает это с помощью формул в ячейках. Формула выполняет вычисления или другие действия с данными на листе. Формула всегда начинается со знака равенства (=), за которым могут следовать числа, математические операторы (например, знак «плюс» или «минус») и функции, которые значительно расширяют возможности формулы.
Ниже приведен пример формулы, умножающей 2 на 3 и прибавляющей к результату 5, чтобы получить 11.
=2*3+5
Следующая формула использует функцию ПЛТ для вычисления платежа по ипотеке (1 073,64 долларов США) с 5% ставкой (5% разделить на 12 месяцев равняется ежемесячному проценту) на период в 30 лет (360 месяцев) с займом на сумму 200 000 долларов:
=ПЛТ(0,05/12;360;200000)
Ниже приведены примеры формул, которые можно использовать на листах.
-
=A1+A2+A3 Вычисляет сумму значений в ячейках A1, A2 и A3.
-
=КОРЕНЬ(A1) Использует функцию КОРЕНЬ для возврата значения квадратного корня числа в ячейке A1.
-
=СЕГОДНЯ() Возвращает текущую дату.
-
=ПРОПИСН(«привет») Преобразует текст «привет» в «ПРИВЕТ» с помощью функции ПРОПИСН.
-
=ЕСЛИ(A1>0) Анализирует ячейку A1 и проверяет, превышает ли значение в ней нуль.
Элементы формулы
Формула также может содержать один или несколько из таких элементов: функции, ссылки, операторы и константы.
1. Функции. Функция ПИ() возвращает значение числа Пи: 3,142…
2. Ссылки. A2 возвращает значение ячейки A2.
3. Константы. Числа или текстовые значения, введенные непосредственно в формулу, например 2.
4. Операторы. Оператор ^ («крышка») применяется для возведения числа в степень, а оператор * («звездочка») — для умножения.
Использование констант в формулах
Константа представляет собой готовое (не вычисляемое) значение, которое всегда остается неизменным. Например, дата 09.10.2008, число 210 и текст «Прибыль за квартал» являются константами. выражение или его значение константами не являются. Если формула в ячейке содержит константы, но не ссылки на другие ячейки (например, имеет вид =30+70+110), значение в такой ячейке изменяется только после изменения формулы.
Использование операторов в формулах
Операторы определяют операции, которые необходимо выполнить над элементами формулы. Вычисления выполняются в стандартном порядке (соответствующем основным правилам арифметики), однако его можно изменить с помощью скобок.
Типы операторов
Приложение Microsoft Excel поддерживает четыре типа операторов: арифметические, текстовые, операторы сравнения и операторы ссылок.
Арифметические операторы
Арифметические операторы служат для выполнения базовых арифметических операций, таких как сложение, вычитание, умножение, деление или объединение чисел. Результатом операций являются числа. Арифметические операторы приведены ниже.
Арифметический оператор |
Значение |
Пример |
+ (знак «плюс») |
Сложение |
3+3 |
– (знак «минус») |
Вычитание |
3–1 |
* (звездочка) |
Умножение |
3*3 |
/ (косая черта) |
Деление |
3/3 |
% (знак процента) |
Доля |
20% |
^ (крышка) |
Возведение в степень |
3^2 |
Операторы сравнения
Операторы сравнения используются для сравнения двух значений. Результатом сравнения является логическое значение: ИСТИНА либо ЛОЖЬ.
Оператор сравнения |
Значение |
Пример |
= (знак равенства) |
Равно |
A1=B1 |
> (знак «больше») |
Больше |
A1>B1 |
< (знак «меньше») |
Меньше |
A1<B1 |
>= (знак «больше или равно») |
Больше или равно |
A1>=B1 |
<= (знак «меньше или равно») |
Меньше или равно |
A1<=B1 |
<> (знак «не равно») |
Не равно |
A1<>B1 |
Текстовый оператор конкатенации
Амперсанд (&) используется для объединения (соединения) одной или нескольких текстовых строк в одну.
Текстовый оператор |
Значение |
Пример |
& (амперсанд) |
Соединение или объединение последовательностей знаков в одну последовательность |
Выражение «Северный»&«ветер» дает результат «Северный ветер». |
Операторы ссылок
Для определения ссылок на диапазоны ячеек можно использовать операторы, указанные ниже.
Оператор ссылки |
Значение |
Пример |
: (двоеточие) |
Оператор диапазона, который образует одну ссылку на все ячейки, находящиеся между первой и последней ячейками диапазона, включая эти ячейки. |
B5:B15 |
; (точка с запятой) |
Оператор объединения. Объединяет несколько ссылок в одну ссылку. |
СУММ(B5:B15,D5:D15) |
(пробел) |
Оператор пересечения множеств, используется для ссылки на общие ячейки двух диапазонов. |
B7:D7 C6:C8 |
Порядок выполнения Excel в Интернете в формулах
В некоторых случаях порядок вычисления может повлиять на возвращаемое формулой значение, поэтому для получения нужных результатов важно понимать стандартный порядок вычислений и знать, как можно его изменить.
Порядок вычислений
Формулы вычисляют значения в определенном порядке. Формула всегда начинается со знака равенства (=). Excel в Интернете интерпретирует символы, которые следуют знаку равенства, как формулу. После знака равенства вычисляются элементы (операнды), такие как константы или ссылки на ячейки. Они разделяются операторами вычислений. Excel в Интернете вычисляет формулу слева направо в соответствии с определенным порядком для каждого оператора в формуле.
Приоритет операторов
Если объединить несколько операторов в одну формулу, Excel в Интернете выполняет операции в порядке, показанном в следующей таблице. Если формула содержит операторы с одинаковым приоритетом (например, если формула содержит оператор умножения и деления), Excel в Интернете вычисляет операторы слева направо.
Оператор |
Описание |
: (двоеточие) (один пробел) , (запятая) |
Операторы ссылок |
– |
Знак «минус» |
% |
Процент |
^ |
Возведение в степень |
* и / |
Умножение и деление |
+ и — |
Сложение и вычитание |
& |
Объединение двух текстовых строк в одну |
= |
Сравнение |
Использование круглых скобок
Чтобы изменить порядок вычисления формулы, заключите ее часть, которая должна быть выполнена первой, в скобки. Например, приведенная ниже формула возвращает значение 11, так как Excel в Интернете выполняет умножение перед добавлением. В этой формуле число 2 умножается на 3, а затем к результату прибавляется число 5.
=5+2*3
В отличие от этого, если для изменения синтаксиса используются круглые скобки, Excel в Интернете 5 и 2, а затем умножает результат на 3, чтобы получить 21.
=(5+2)*3
В следующем примере скобки, которые заключают первую часть формулы, принудительно Excel в Интернете сначала вычислить B4+25, а затем разделить результат на сумму значений в ячейках D5, E5 и F5.
=(B4+25)/СУММ(D5:F5)
Использование функций и вложенных функций в формулах
Функции — это заранее определенные формулы, которые выполняют вычисления по заданным величинам, называемым аргументами, и в указанном порядке. Эти функции позволяют выполнять как простые, так и сложные вычисления.
Синтаксис функций
Приведенный ниже пример функции ОКРУГЛ, округляющей число в ячейке A10, демонстрирует синтаксис функции.
1. Структура. Структура функции начинается со знака равенства (=), за которым следует имя функции, открывающая скобка, аргументы функции, разделенные запятыми, и закрывающая скобка.
2. Имя функции. Чтобы отобразить список доступных функций, щелкните любую ячейку и нажмите клавиши SHIFT+F3.
3. Аргументы. Существуют различные типы аргументов: числа, текст, логические значения (ИСТИНА и ЛОЖЬ), массивы, значения ошибок (например #Н/Д) или ссылки на ячейки. Используемый аргумент должен возвращать значение, допустимое для данного аргумента. В качестве аргументов также используются константы, формулы и другие функции.
4. Всплывающая подсказка аргумента. При вводе функции появляется всплывающая подсказка с синтаксисом и аргументами. Например, всплывающая подсказка появляется после ввода выражения =ОКРУГЛ(. Всплывающие подсказки отображаются только для встроенных функций.
Ввод функций
Диалоговое окно Вставить функцию упрощает ввод функций при создании формул, в которых они содержатся. При вводе функции в формулу в диалоговом окне Вставить функцию отображаются имя функции, все ее аргументы, описание функции и каждого из аргументов, текущий результат функции и всей формулы.
Чтобы упростить создание и редактирование формул и свести к минимуму количество опечаток и синтаксических ошибок, пользуйтесь автозавершением формул. После ввода знака = (знак равенства) и начальных букв или триггера отображения Excel в Интернете под ячейкой отображается динамический раскрывающийся список допустимых функций, аргументов и имен, соответствующих буквам или триггеру. После этого элемент из раскрывающегося списка можно вставить в формулу.
Вложенные функции
В некоторых случаях может потребоваться использовать функцию в качестве одного из аргументов другой функции. Например, в приведенной ниже формуле для сравнения результата со значением 50 используется вложенная функция СРЗНАЧ.
1. Функции СРЗНАЧ и СУММ вложены в функцию ЕСЛИ.
Допустимые типы вычисляемых значений Вложенная функция, используемая в качестве аргумента, должна возвращать соответствующий ему тип данных. Например, если аргумент должен быть логическим, т. е. Если это не так, Excel в Интернете отображает #VALUE! В противном случае TE102825393 выдаст ошибку «#ЗНАЧ!».
<c0>Предельное количество уровней вложенности функций</c0>. В формулах можно использовать до семи уровней вложенных функций. Если функция Б является аргументом функции А, функция Б находится на втором уровне вложенности. Например, в приведенном выше примере функции СРЗНАЧ и СУММ являются функциями второго уровня, поскольку обе они являются аргументами функции ЕСЛИ. Функция, вложенная в качестве аргумента в функцию СРЗНАЧ, будет функцией третьего уровня, и т. д.
Использование ссылок в формулах
Ссылка определяет ячейку или диапазон ячеек на листе и сообщает Excel в Интернете где искать значения или данные, которые нужно использовать в формуле. С помощью ссылок можно использовать в одной формуле данные, находящиеся в разных частях листа, а также использовать значение одной ячейки в нескольких формулах. Вы также можете задавать ссылки на ячейки разных листов одной книги либо на ячейки из других книг. Ссылки на ячейки других книг называются связями или внешними ссылками.
Стиль ссылок A1
Стиль ссылок по умолчанию По умолчанию в Excel в Интернете используется ссылочный стиль A1, который ссылается на столбцы с буквами (A–XFD, всего 16 384 столбца) и ссылается на строки с числами (от 1 до 1 048 576). Эти буквы и номера называются заголовками строк и столбцов. Для ссылки на ячейку введите букву столбца, и затем — номер строки. Например, ссылка B2 указывает на ячейку, расположенную на пересечении столбца B и строки 2.
Ячейка или диапазон |
Использование |
Ячейка на пересечении столбца A и строки 10 |
A10 |
Диапазон ячеек: столбец А, строки 10-20. |
A10:A20 |
Диапазон ячеек: строка 15, столбцы B-E |
B15:E15 |
Все ячейки в строке 5 |
5:5 |
Все ячейки в строках с 5 по 10 |
5:10 |
Все ячейки в столбце H |
H:H |
Все ячейки в столбцах с H по J |
H:J |
Диапазон ячеек: столбцы А-E, строки 10-20 |
A10:E20 |
<c0>Ссылка на другой лист</c0>. В приведенном ниже примере функция СРЗНАЧ используется для расчета среднего значения диапазона B1:B10 на листе «Маркетинг» той же книги.
1. Ссылка на лист «Маркетинг».
2. Ссылка на диапазон ячеек с B1 по B10 включительно.
3. Ссылка на лист, отделенная от ссылки на диапазон значений.
Различия между абсолютными, относительными и смешанными ссылками
Относительные ссылки . Относительная ссылка в формуле, например A1, основана на относительной позиции ячейки, содержащей формулу, и ячейки, на которую указывает ссылка. При изменении позиции ячейки, содержащей формулу, изменяется и ссылка. При копировании или заполнении формулы вдоль строк и вдоль столбцов ссылка автоматически корректируется. По умолчанию в новых формулах используются относительные ссылки. Например, при копировании или заполнении относительной ссылки из ячейки B2 в ячейку B3 она автоматически изменяется с =A1 на =A2.
Абсолютные ссылки . Абсолютная ссылка на ячейку в формуле, например $A$1, всегда ссылается на ячейку, расположенную в определенном месте. При изменении позиции ячейки, содержащей формулу, абсолютная ссылка не изменяется. При копировании или заполнении формулы по строкам и столбцам абсолютная ссылка не корректируется. По умолчанию в новых формулах используются относительные ссылки, а для использования абсолютных ссылок надо активировать соответствующий параметр. Например, при копировании или заполнении абсолютной ссылки из ячейки B2 в ячейку B3 она остается прежней в обеих ячейках: =$A$1.
Смешанные ссылки . Смешанная ссылка содержит либо абсолютный столбец и относительную строку, либо абсолютную строку и относительный столбец. Абсолютная ссылка на столбец имеет вид $A1, $B1 и т. д. Абсолютная ссылка на строку имеет вид A$1, B$1 и т. д. Если положение ячейки с формулой изменяется, относительная ссылка меняется, а абсолютная — нет. При копировании или заполнении формулы по строкам и столбцам относительная ссылка автоматически изменяется, а абсолютная ссылка не корректируется. Например, при копировании или заполнении смешанной ссылки из ячейки A2 в ячейку B3 она автоматически изменяется с =A$1 на =B$1.
Стиль трехмерных ссылок
Удобный способ для ссылки на несколько листов . Трехмерные ссылки используются для анализа данных из одной и той же ячейки или диапазона ячеек на нескольких листах одной книги. Трехмерная ссылка содержит ссылку на ячейку или диапазон, перед которой указываются имена листов. Excel в Интернете использует все листы, хранящиеся между начальным и конечным именами ссылки. Например, формула =СУММ(Лист2:Лист13!B5) суммирует все значения, содержащиеся в ячейке B5 на всех листах в диапазоне от Лист2 до Лист13 включительно.
-
При помощи трехмерных ссылок можно создавать ссылки на ячейки на других листах, определять имена и создавать формулы с использованием следующих функций: СУММ, СРЗНАЧ, СРЗНАЧА, СЧЁТ, СЧЁТЗ, МАКС, МАКСА, МИН, МИНА, ПРОИЗВЕД, СТАНДОТКЛОН.Г, СТАНДОТКЛОН.В, СТАНДОТКЛОНА, СТАНДОТКЛОНПА, ДИСПР, ДИСП.В, ДИСПА и ДИСППА.
-
Трехмерные ссылки нельзя использовать в формулах массива.
-
Трехмерные ссылки нельзя использовать вместе с оператор пересечения (один пробел), а также в формулах с неявное пересечение.
Что происходит при перемещении, копировании, вставке или удалении листов . Нижеследующие примеры поясняют, какие изменения происходят в трехмерных ссылках при перемещении, копировании, вставке и удалении листов, на которые такие ссылки указывают. В примерах используется формула =СУММ(Лист2:Лист6!A2:A5) для суммирования значений в ячейках с A2 по A5 на листах со второго по шестой.
-
Вставка или копирование . Если вставить или скопировать листы между листами 2 и 6 (в этом примере это конечные точки), Excel в Интернете содержит все значения в ячейках A2–A5 из добавленных листов в вычислениях.
-
Удаление . При удалении листов между листами 2 и 6 Excel в Интернете удаляет их значения из вычисления.
-
Перемещение . При перемещении листов между листами 2 и 6 в расположение за пределами указанного диапазона листов Excel в Интернете удаляет их значения из вычисления.
-
Перемещение конечного листа . При перемещении листа 2 или листа 6 в другое место в той же книге Excel в Интернете корректирует вычисление в соответствии с новым диапазоном листов между ними.
-
Удаление конечного листа . При удалении sheet2 или Sheet6 Excel в Интернете корректирует вычисление в соответствии с диапазоном листов между ними.
Стиль ссылок R1C1
Можно использовать такой стиль ссылок, при котором нумеруются и строки, и столбцы. Стиль ссылок R1C1 удобен для вычисления положения столбцов и строк в макросах. В стиле R1C1 Excel в Интернете указывает расположение ячейки с «R», за которым следует номер строки и «C», за которым следует номер столбца.
Ссылка |
Значение |
R[-2]C |
относительная ссылка на ячейку, расположенную на две строки выше в том же столбце |
R[2]C[2] |
Относительная ссылка на ячейку, расположенную на две строки ниже и на два столбца правее |
R2C2 |
Абсолютная ссылка на ячейку, расположенную во второй строке второго столбца |
R[-1] |
Относительная ссылка на строку, расположенную выше текущей ячейки |
R |
Абсолютная ссылка на текущую строку |
При записи макроса Excel в Интернете некоторые команды с помощью ссылочного стиля R1C1. Например, если вы записываете команду, например нажатие кнопки « Автосчет», чтобы вставить формулу, которая добавляет диапазон ячеек, Excel в Интернете формулу с помощью стиля R1C1, а не стиля A1, ссылок.
Использование имен в формулах
Можно создать определенные имена для представления ячеек, диапазонов ячеек, формул, констант или Excel в Интернете таблиц. Имя — это значимое краткое обозначение, поясняющее предназначение ссылки на ячейку, константы, формулы или таблицы, так как понять их суть с первого взгляда бывает непросто. Ниже приведены примеры имен и показано, как их использование упрощает понимание формул.
Тип примера |
Пример использования диапазонов вместо имен |
Пример с использованием имен |
Ссылка |
=СУММ(A16:A20) |
=СУММ(Продажи) |
Константа |
=ПРОИЗВЕД(A12,9.5%) |
=ПРОИЗВЕД(Цена,НСП) |
Формула |
=ТЕКСТ(ВПР(MAX(A16,A20),A16:B20,2,FALSE),»дд.мм.гггг») |
=ТЕКСТ(ВПР(МАКС(Продажи),ИнформацияОПродажах,2,ЛОЖЬ),»дд.мм.гггг») |
Таблица |
A22:B25 |
=ПРОИЗВЕД(Price,Table1[@Tax Rate]) |
Типы имен
Существует несколько типов имен, которые можно создавать и использовать.
Определенное имя Имя, используемое для представления ячейки, диапазона ячеек, формулы или константы. Вы можете создавать собственные определенные имена. Кроме того, Excel в Интернете иногда создает определенное имя, например при настройке области печати.
Имя таблицы Имя таблицы Excel в Интернете, которая представляет собой коллекцию данных об определенной теме, которая хранится в записях (строках) и полях (столбцах). Excel в Интернете создает имя таблицы Excel в Интернете «Table1», «Table2» и т. д. при каждой вставке таблицы Excel в Интернете, но вы можете изменить эти имена, чтобы сделать их более значимыми.
Создание и ввод имен
Имя создается с помощью команды «Создать имя» из выделенного фрагмента. Можно удобно создавать имена из существующих имен строк и столбцов с помощью фрагмента, выделенного на листе.
Примечание: По умолчанию в именах используются абсолютные ссылки на ячейки.
Имя можно ввести указанными ниже способами.
-
Ввода Введите имя, например, в качестве аргумента формулы.
-
<c0>Автозавершение формул</c0>. Используйте раскрывающийся список автозавершения формул, в котором автоматически выводятся допустимые имена.
Использование формул массива и констант массива
Excel в Интернете не поддерживает создание формул массива. Вы можете просматривать результаты формул массива, созданных в классическом приложении Excel, но не сможете изменить или пересчитать их. Если на вашем компьютере установлено классическое приложение Excel, нажмите кнопку Открыть в Excel, чтобы перейти к работе с массивами.
В примере формулы массива ниже вычисляется итоговое значение цен на акции; строки ячеек не используются при вычислении и отображении отдельных значений для каждой акции.
При вводе формулы «={СУММ(B2:D2*B3:D3)}» в качестве формулы массива сначала вычисляется значение «Акции» и «Цена» для каждой биржи, а затем — сумма всех результатов.
<c0>Вычисление нескольких значений</c0>. Некоторые функции возвращают массивы значений или требуют массив значений в качестве аргумента. Для вычисления нескольких значений с помощью формулы массива необходимо ввести массив в диапазон ячеек, состоящий из того же числа строк или столбцов, что и аргументы массива.
Например, по заданному ряду из трех значений продаж (в столбце B) для трех месяцев (в столбце A) функция ТЕНДЕНЦИЯ определяет продолжение линейного ряда объемов продаж. Чтобы можно было отобразить все результаты формулы, она вводится в три ячейки столбца C (C1:C3).
Формула «=ТЕНДЕНЦИЯ(B1:B3;A1:A3)», введенная как формула массива, возвращает три значения (22 196, 17 079 и 11 962), вычисленные по трем объемам продаж за три месяца.
Использование констант массива
В обычную формулу можно ввести ссылку на ячейку со значением или на само значение, также называемое константой. Подобным образом в формулу массива можно ввести ссылку на массив либо массив значений, содержащихся в ячейках (его иногда называют константой массива). Формулы массива принимают константы так же, как и другие формулы, однако константы массива необходимо вводить в определенном формате.
Константы массива могут содержать числа, текст, логические значения, например ИСТИНА или ЛОЖЬ, либо значения ошибок, такие как «#Н/Д». В одной константе массива могут присутствовать значения различных типов, например {1,3,4;ИСТИНА,ЛОЖЬ,ИСТИНА}. Числа в константах массива могут быть целыми, десятичными или иметь экспоненциальный формат. Текст должен быть заключен в двойные кавычки, например «Вторник».
Константы массива не могут содержать ссылки на ячейку, столбцы или строки разной длины, формулы и специальные знаки: $ (знак доллара), круглые скобки или % (знак процента).
При форматировании констант массива убедитесь, что выполняются указанные ниже требования.
-
Константы заключены в фигурные скобки ( { } ).
-
Столбцы разделены запятыми (,). Например, чтобы представить значения 10, 20, 30 и 40, введите {10,20,30,40}. Эта константа массива является матрицей размерности 1 на 4 и соответствует ссылке на одну строку и четыре столбца.
-
Значения ячеек из разных строк разделены точками с запятой (;). Например, чтобы представить значения 10, 20, 30, 40 и 50, 60, 70, 80, находящиеся в расположенных друг под другом ячейках, можно создать константу массива с размерностью 2 на 4: {10,20,30,40;50,60,70,80}.
Skip to content
В статье описано, как использовать функцию ЕСЛИОШИБКА в Excel для обнаружения ошибок и замены их пустой ячейкой, другим значением или определённым сообщением. Покажем примеры, как использовать функцию ЕСЛИОШИБКА с функциями визуального просмотра и сопоставления индексов, а также как она сравнивается с ЕСЛИ ОШИБКА и ЕСНД.
«Дайте мне точку опоры, и я переверну землю», — сказал однажды Архимед. «Дайте мне формулу, и я заставлю ее вернуть ошибку», — сказал бы пользователь Excel. Здесь мы не будем рассматривать, как получить ошибки в Excel. Мы узнаем, как предотвратить их, чтобы ваши таблицы были чистыми, а формулы — понятными и точными.
Итак, вот о чем мы поговорим:
Что означает функция Excel ЕСЛИОШИБКА
Функция ЕСЛИОШИБКА (IFERROR по-английски) предназначена для обнаружения и устранения ошибок в формулах и вычислениях. Это значит, что функция ЕСЛИОШИБКА должна выполнить определенные действия, если видит какую-либо ошибку. Более конкретно, она проверяет формулу и, если вычисление дает ошибку, то она возвращает какое-то другое значение, которое вы ей укажете. Если же всё хорошо, то просто возвращает результат формулы.
Синтаксис функции Excel ЕСЛИОШИБКА следующий:
ЕСЛИОШИБКА(значение; значение_если_ошибка)
Где:
- Значение (обязательно) — что проверять на наличие ошибок. Это может быть формула, выражение или ссылка на ячейку.
- Значение_если_ошибка (обязательно) — что возвращать при обнаружении ошибки. Это может быть пустая строка (получится пустая ячейка), текстовое сообщение, числовое значение, другая формула или вычисление.
Например, при делении двух столбцов чисел можно получить кучу разных ошибок, если в одном из столбцов есть пустые ячейки, нули или текст.
Рассмотрим простой пример:
Чтобы этого не произошло, используйте формулу ЕСЛИОШИБКА, чтобы перехватывать и обрабатывать их нужным вам образом.
Если ошибка, то пусто
Укажите пустую строку (“”) в аргументе значение_если_ошибка, чтобы вернуть пустую ячейку, если обнаружена ошибка:
=ЕСЛИОШИБКА(A4/B4; «»)
Вернемся к нашему примеру и используем ЕСЛИОШИБКА:
Как видите по сравнению с первым скриншотом, вместо стандартных сообщений мы видим просто пустые ячейки.
Если ошибка, то показать сообщение
Вы также можете отобразить собственное сообщение вместо стандартного обозначения ошибок Excel:
=ЕСЛИОШИБКА(A4/B4; «Ошибка в вычислениях»)
Перед вами – третий вариант нашей небольшой таблицы.
5 фактов, которые нужно знать о функции ЕСЛИОШИБКА в Excel
- ЕСЛИОШИБКА в Excel обрабатывает все типы ошибок, включая #ДЕЛ/0!, #Н/Д, #ИМЯ?, #NULL!, #ЧИСЛО!, #ССЫЛКА! и #ЗНАЧ!.
- В зависимости от содержимого аргумента значение_если_ошибка функция может заменить ошибки вашим текстовым сообщением, числом, датой или логическим значением, результатом другой формулы или пустой строкой (пустой ячейкой).
- Если аргумент значение является пустой ячейкой, он обрабатывается как пустая строка (»’), но не как ошибка.
- ЕСЛИОШИБКА появилась в Excel 2007 и доступна во всех последующих версиях Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021 и Excel 365.
- Чтобы перехватывать ошибки в Excel 2003 и более ранних версиях, используйте функцию ЕОШИБКА в сочетании с функцией ЕСЛИ, например как показано ниже:
=ЕСЛИ(ЕОШИБКА(A4/B4);»Ошибка в вычислениях»;A4/B4)
Далее вы увидите, как можно использовать ЕСЛИОШИБКА в Excel в сочетании с другими функциями для выполнения более сложных задач.
ЕСЛИОШИБКА с функцией ВПР
Часто встречающаяся задача в Excel – поиск нужного значения в таблице в соответствии с определёнными критериями. И не всегда этот поиск бывает успешным. Одним из наиболее распространенных применений функции ЕСЛИОШИБКА является сообщение пользователям, что искомое значение не найдено в базе данных. Для этого вы заключаете формулу ВПР в функцию ЕСЛИОШИБКА примерно следующим образом:
ЕСЛИОШИБКА(ВПР( … );»Не найдено»)
Если искомое значение отсутствует в таблице, которую вы просматриваете, обычная формула ВПР вернет ошибку #Н/Д:
Для лучшего понимания таблицы и улучшения ее внешнего вида, заключите функцию ВПР в ЕСЛИОШИБКА и покажите более понятное для пользователя сообщение:
=ЕСЛИОШИБКА(ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ); «Не найдено»)
На скриншоте ниже показан пример ЕСЛИОШИБКА вместе с ВПР в Excel:
Если вы хотите перехватывать только #Н/Д, но не все подряд ошибки, используйте функцию ЕНД вместо ЕСЛИОШИБКА. Она просто возвращает ИСТИНА или ЛОЖЬ в зависимости от появления ошибки #Н/Д. Поэтому нам здесь еще понадобится функция ЕСЛИ, чтобы обработать эти логические значения:
=ЕСЛИ(ЕНД(ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ)); «Не найдено»;ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ))
Дополнительные примеры формул Excel ЕСЛИОШИБКА ВПР можно также найти в нашей статье Как убрать сообщение #Н/Д в ВПР?
Вложенные функции ЕСЛИОШИБКА для выполнения последовательных ВПР
В ситуациях, когда вам нужно выполнить несколько операций ВПР в зависимости от того, была ли предыдущая ВПР успешной или неудачной, вы можете вложить две или более функции ЕСЛИОШИБКА одну в другую.
Предположим, у вас есть несколько отчетов о продажах из региональных отделений вашей компании, и вы хотите получить сумму по определенному идентификатору заказа. С ячейкой В9 в качестве критерия поиска (номер заказа) и тремя небольшими таблицами поиска (таблица 1, 2 и 3), формула выглядит следующим образом:
=ЕСЛИОШИБКА(ВПР(B9;A3:B6;2;0);ЕСЛИОШИБКА(ВПР(B9;D3:E6;2;0);ЕСЛИОШИБКА(ВПР(B9;G3:H6;2;0);»Не найден»)))
Результат будет выглядеть примерно так, как на рисунке ниже:
То есть, если поиск завершился неудачей (то есть, ошибкой) первой таблице, начинаем искать во второй, и так далее. Если нигде ничего не нашли, получим сообщение «Не найден».
ЕСЛИОШИБКА в формулах массива
Как вы, наверное, знаете, формулы массива в Excel предназначены для выполнения нескольких вычислений внутри одной формулы. Если вы в аргументе значение функции ЕСЛИОШИБКА укажете формулу или выражение, которое возвращает массив, она также обработает и вернет массив значений для каждой ячейки в указанном диапазоне. Пример ниже поможет пояснить это.
Допустим, у вас есть Сумма в столбце B и Цена в столбце C, и вы хотите вычислить Количество. Это можно сделать с помощью следующей формулы массива, которая делит каждую ячейку в диапазоне B2:B4 на соответствующую ячейку в диапазоне C2:C4, а затем суммирует результаты:
=СУММ(($B$2:$B$4/$C$2:$C$4))
Формула работает нормально, пока в диапазоне делителей нет нулей или пустых ячеек. Если есть хотя бы одно значение 0 или пустая строка, то возвращается ошибка: #ДЕЛ/0! Из-за одной некорректной позиции мы не можем получить итоговый результат.
Чтобы исправить эту ситуацию, просто вложите деление внутрь формулы ЕСЛИОШИБКА:
=СУММ(ЕСЛИОШИБКА($B$2:$B$4/$C$2:$C$4;0))
Что делает эта формула? Делит значение в столбце B на значение в столбце C в каждой строке (3500/100, 2000/50 и 0/0) и возвращает массив результатов {35; 40; #ДЕЛ/0!}. Функция ЕСЛИОШИБКА перехватывает все ошибки #ДЕЛ/0! и заменяет их нулями. Затем функция СУММ суммирует значения в итоговом массиве {35; 40; 0} и выводит окончательный результат (35+40=75).
Примечание. Помните, что ввод формулы массива должен быть завершен нажатием комбинации Ctrl + Shift + Enter (если у вас не Office365 или Excel2021 – они понимают формулы массива без дополнительных телодвижений).
ЕСЛИОШИБКА или ЕСЛИ + ЕОШИБКА?
Теперь, когда вы знаете, как использовать функцию ЕСЛИОШИБКА в Excel, вы можете удивиться, почему некоторые люди все еще склоняются к использованию комбинации ЕСЛИ + ЕОШИБКА. Есть ли у этого старого метода преимущества по сравнению с ЕСЛИОШИБКА?
В старые недобрые времена Excel 2003 и более ранних версий, когда ЕСЛИОШИБКА не существовало, совместное использование ЕСЛИ и ЕОШИБКА было единственным возможным способом перехвата ошибок. Это просто немного более сложный способ достижения того же результата.
Например, чтобы отловить ошибки ВПР, вы можете использовать любую из приведенных ниже формул.
В Excel 2007 — Excel 2016:
ЕСЛИОШИБКА(ВПР( … ); «Не найдено»)
Во всех версиях Excel:
ЕСЛИ(ЕОШИБКА(ВПР(…)); «Не найдено»; ВПР(…))
Обратите внимание, что в формуле ЕСЛИ ЕОШИБКА ВПР вам нужно дважды выполнить ВПР. Чтобы лучше понять, расшифруем: если ВПР приводит к ошибке, вернуть «Не найдено», в противном случае вывести результат ВПР.
А вот простой пример формулы Excel ЕСЛИ ЕОШИБКА ВПР:
=ЕСЛИ(ЕОШИБКА(ВПР(D2; A2:B5;2;ЛОЖЬ)); «Не найдено»; ВПР(D2; A2:B5;2;ЛОЖЬ ))
ЕСЛИОШИБКА против ЕСНД
Представленная в Excel 2013, ЕСНД (IFNA в английской версии) — это еще одна функция для проверки формулы на наличие ошибок. Его синтаксис похож на синтаксис ЕСЛИОШИБКА:
ЕСНД(значение; значение_если_НД)
Чем ЕСНД отличается от ЕСЛИОШИБКА? Функция ЕСНД перехватывает только ошибки #Н/Д, тогда как ЕСЛИОШИБКА обрабатывает все типы ошибок.
В каких ситуациях вы можете использовать ЕСНД? Когда нецелесообразно скрывать все ошибки. Например, при работе с важными данными вы можете захотеть получать предупреждения о возможных ошибках в вашем наборе данных (случайном делении на ноль и т.п.), а стандартные сообщения об ошибках Excel с символом «#» могут быть яркими визуальными индикаторами проблем.
Давайте посмотрим, как можно создать формулу, отображающую сообщение «Не найдено» вместо ошибки «Н/Д», которая появляется, когда искомое значение отсутствует в наборе данных, но при этом вы будете видеть все другие ошибки Excel.
Предположим, вы хотите получить Количество из таблицы поиска в таблицу с результатами, как показано на рисунке ниже. Проще всего было бы использовать ЕСЛИОШИБКА с ВПР. Таблица приобрела бы красивый вид, но при этом за надписью «Не найдено» были бы скрыты не только ошибки поиска, но и все другие ошибки. И мы не заметили бы, что в исходной таблице поиска у нас есть ошибка деления на ноль, так как не заполнена цена персиков. Поэтому более разумно использовать ЕСНД, чтобы с ее помощью обработать только ошибки поиска:
=ЕСНД(ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ); «Не найдено»)
Или подойдет комбинация ЕСЛИ ЕНД для старых версий Excel:
=ЕСЛИ(ЕНД(ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ));»Не найдено»; ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ))
Как видите, формула ЕСНД с ВПР возвращает «Не найдено» только для товара, которого нет в таблице поиска (Сливы). Для персиков она показывает #ДЕЛ/0! что указывает на то, что наша таблица поиска содержит ошибку деления на ноль.
Рекомендации по использованию ЕСЛИОШИБКА в Excel
Итак, вы уже знаете, что функция ЕСЛИОШИБКА — это самый простой способ отлавливать ошибки в Excel и маскировать их пустыми ячейками, нулевыми значениями или собственными сообщениями. Однако это не означает, что вы должны обернуть каждую формулу в функцию обработки ошибок.
Эти простые рекомендации могут помочь вам сохранить баланс.
- Не ловите ошибки без весомой на то причины.
- Оберните в ЕСЛИОШИБКА только ту часть формулы, где по вашему мнению могут возникнуть проблемы.
- Чтобы обрабатывать только определенные ошибки, используйте другую функцию обработки ошибок с меньшей областью действия:
- ЕСНД или ЕСЛИ ЕНД для обнаружения только ошибок #H/Д.
- ЕОШ для обнаружения всех ошибок, кроме #Н/Д.
Мы постарались рассказать, как можно использовать функцию ЕСЛИОШИБКА в Excel. Примеры перехвата и обработки ошибок могут быть полезны и для «чайников», и для более опытных пользователей.
Также рекомендуем:
Содержание
- Что возвращает функция
- Формула ЕСЛИ в Excel – примеры нескольких условий
- Синтаксис функции ЕСЛИ
- Расширение функционала с помощью операторов «И» и «ИЛИ»
- Простейший пример применения.
- Применение «ЕСЛИ» с несколькими условиями
- Операторы сравнения чисел и строк
- Одновременное выполнение двух условий
- Общее определение и задачи
- Как правильно записать?
- Дополнительная информация
- Вложенные условия с математическими выражениями.
- Аргументы функции
- А если один из параметров не заполнен?
- Функция ЕПУСТО
- Функции ИСТИНА и ЛОЖЬ
- Составное условие
- Простое условие
- Пример функции с несколькими условиями
- Пример использования «ЕСЛИ»
- Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
- Заключение
Что возвращает функция
Заданное вами значение при выполнении двух условий ИСТИНА или ЛОЖЬ.
Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.
Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.
Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2<1, то условия B2<0,9 и B2<0,95 Excel бы просто «не заметил», т.к. они входят в интервал B2<1 который проверился бы первым (если значение менее 0,9, само собой, оно также меньше и 1). И тогда у нас получилось бы только два возможных варианта: менее 1 и альтернативное, т.е. 1 и более.
При написании формулы легко запутаться, поэтому рекомендуется смотреть на всплывающую подсказку.
В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку
Синтаксис функции ЕСЛИ
Вот как выглядит синтаксис этой функции и её аргументы:
=ЕСЛИ(логическое выражение, значение если «да», значение если «нет»)
Логическое выражение – (обязательное) условие, которое возвращает значение «истина» или «ложь» («да» или «нет»);
Значение если «да» – (обязательное) действие, которое выполняется в случае положительного ответа;
Значение если «нет» – (обязательное) действие, которое выполняется в случае отрицательного ответа;
Давайте вместе подробнее рассмотрим эти аргументы.
Первый аргумент – это логический вопрос. И ответ этот может быть только «да» или «нет», «истина» или «ложь».
Как правильно задать вопрос? Для этого можно составить логическое выражение, используя знаки “=”, “>”, “<”, “>=”, “<=”, “<>”.
Расширение функционала с помощью операторов «И» и «ИЛИ»
Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функции И и ИЛИ могут проверить до 30 условий.
Пример использования оператора И:
Пример использования функции ИЛИ:
Простейший пример применения.
Предположим, вы работаете в компании, которая занимается продажей шоколада в нескольких регионах и работает с множеством покупателей.
Нам необходимо выделить продажи, которые произошли в нашем регионе, и те, которые были сделаны за рубежом. Для этого нужно добавить в таблицу ещё один признак для каждой продажи – страну, в которой она произошла. Мы хотим, чтобы этот признак создавался автоматически для каждой записи (то есть, строки).
В этом нам поможет функция ЕСЛИ. Добавим в таблицу данных столбец “Страна”. Регион “Запад” – это местные продажи («Местные»), а остальные регионы – это продажи за рубеж («Экспорт»).
Применение «ЕСЛИ» с несколькими условиями
Мы только что рассмотрели пример использования оператора «ЕСЛИ» с одним логическим выражением. Но в программе также имеется возможность задавать больше одного условия. При этом сначала будет проводиться проверка по первому, и в случае его успешного выполнения сразу отобразится заданное значение. И только если не будет выполнено первое логическое выражение, в силу вступит проверка по второму.
Рассмотрим наглядно на примере все той же таблицы. Но на этот раз усложним задачу. Теперь нужно проставить скидку на женскую обувь в зависимости от вида спорта.
Первое условия – это проверка пола. Если “мужской” – сразу выводится значение 0. Если же это “женский”, то начинается проверка по второму условию. Если вид спорта бег – 20%, если теннис – 10%.
Пропишем формулу для этих условий в нужной нам ячейке.
=ЕСЛИ(B2=”мужской”;0; ЕСЛИ(C2=”бег”;20%;10%))
Щелкаем Enter и получаем результат согласно заданным условиям.
Далее растягиваем формулу на все оставшиеся строки таблицы.
Операторы сравнения чисел и строк
Операторы сравнения чисел и строк представлены операторами, состоящими из одного или двух математических знаков равенства и неравенства:
- < – меньше;
- <= – меньше или равно;
- > – больше;
- >= – больше или равно;
- = – равно;
- <> – не равно.
Синтаксис:
Результат = Выражение1 Оператор Выражение2 |
- Результат – любая числовая переменная;
- Выражение – выражение, возвращающее число или строку;
- Оператор – любой оператор сравнения чисел и строк.
Если переменная Результат будет объявлена как Boolean (или Variant), она будет возвращать значения False и True. Числовые переменные других типов будут возвращать значения 0 (False) и -1 (True).
Операторы сравнения чисел и строк работают с двумя числами или двумя строками. При сравнении числа со строкой или строки с числом, VBA Excel сгенерирует ошибку Type Mismatch (несоответствие типов данных):
Sub Primer1() On Error GoTo Instr Dim myRes As Boolean ‘Сравниваем строку с числом myRes = “пять” > 3 Instr: If Err.Description <> “” Then MsgBox “Произошла ошибка: “ & Err.Description End If End Sub |
Сравнение строк начинается с их первых символов. Если они оказываются равны, сравниваются следующие символы. И так до тех пор, пока символы не окажутся разными или одна или обе строки не закончатся.
Значения буквенных символов увеличиваются в алфавитном порядке, причем сначала идут все заглавные (прописные) буквы, затем строчные. Если необходимо сравнить длины строк, используйте функцию Len.
myRes = “семь” > “восемь” ‘myRes = True myRes = “Семь” > “восемь” ‘myRes = False myRes = Len(“семь”) > Len(“восемь”) ‘myRes = False |
Одновременное выполнение двух условий
Также в Эксель существует возможность вывести данные по одновременному выполнению двух условий. При этом значение будет считаться ложным, если хотя бы одно из условий не выполнено. Для этой задачи применяется оператор «И».
Рассмотрим на примере нашей таблицы. Теперь скидка 30% будет проставлена только, если это женская обувь и предназначена для бега. При соблюдении этих условий одновременно значение ячейки будет равно 30%, в противном случае – 0.
Для этого используем следующую формулу:
=ЕСЛИ(И(B2=”женский”;С2=”бег”);30%;0)
Нажимаем клавишу Enter, чтобы отобразить результат в ячейке.
Аналогично примерам выше, растягиваем формулу на остальные строки.
Общее определение и задачи
«ЕСЛИ» является стандартной функцией программы Microsoft Excel. В ее задачи входит проверка выполнения конкретного условия. Когда условие выполнено (истина), то в ячейку, где использована данная функция, возвращается одно значение, а если не выполнено (ложь) – другое.
Синтаксис этой функции выглядит следующим образом: «ЕСЛИ(логическое выражение; [функция если истина]; [функция если ложь])»
.
Как правильно записать?
Устанавливаем курсор в ячейку G2 и вводим знак “=”. Для Excel это означает, что сейчас будет введена формула. Поэтому как только далее будет нажата буква “е”, мы получим предложение выбрать функцию, начинающуюся этой буквы. Выбираем “ЕСЛИ”.
Далее все наши действия также будут сопровождаться подсказками.
В качестве первого аргумента записываем: С2=”Запад”. Как и в других функциях Excel, адрес ячейки можно не вводить вручную, а просто кликнуть на ней мышкой. Затем ставим “,” и указываем второй аргумент.
Второй аргумент – это значение, которое примет ячейка G2, если записанное нами условие будет выполнено. Это будет слово “Местные”.
После этого снова через запятую указываем значение третьего аргумента. Это значение примет ячейка G2, если условие не будет выполнено: “Экспорт”. Не забываем закончить ввод формулы, закрыв скобку и затем нажав “Enter”.
Наша функция выглядит следующим образом:
=ЕСЛИ(C2=”Запад”,”Местные”,”Экспорт”)
Наша ячейка G2 приняла значение «Местные».
Теперь нашу функцию можно скопировать во все остальные ячейки столбца G.
Дополнительная информация
- В функции IF (ЕСЛИ) может быть протестировано 64 условий за один раз;
- Если какой-либо из аргументов функции является массивом – оценивается каждый элемент массива;
- Если вы не укажете условие аргумента FALSE (ЛОЖЬ) value_if_false (значение_если_ложь) в функции, т.е. после аргумента value_if_true (значение_если_истина) есть только запятая (точка с запятой), функция вернет значение “0”, если результат вычисления функции будет равен FALSE (ЛОЖЬ).
На примере ниже, формула =IF(A1> 20,”Разрешить”) или =ЕСЛИ(A1>20;”Разрешить”) , где value_if_false (значение_если_ложь) не указано, однако аргумент value_if_true (значение_если_истина) по-прежнему следует через запятую. Функция вернет “0” всякий раз, когда проверяемое условие не будет соответствовать условиям TRUE (ИСТИНА).
| - Если вы не укажете условие аргумента TRUE(ИСТИНА) (value_if_true (значение_если_истина)) в функции, т.е. условие указано только для аргумента value_if_false (значение_если_ложь), то формула вернет значение “0”, если результат вычисления функции будет равен TRUE (ИСТИНА);
На примере ниже формула равна =IF (A1>20;«Отказать») или =ЕСЛИ(A1>20;”Отказать”), где аргумент value_if_true (значение_если_истина) не указан, формула будет возвращать “0” всякий раз, когда условие соответствует TRUE (ИСТИНА).
Вложенные условия с математическими выражениями.
Вот еще одна типичная задача: цена за единицу товара изменяется в зависимости от его количества. Ваша цель состоит в том, чтобы написать формулу, которая вычисляет цену для любого количества товаров, введенного в определенную ячейку. Другими словами, ваша формула должна проверить несколько условий и выполнить различные вычисления в зависимости от того, в какой диапазон суммы входит указанное количество товара.
Эта задача также может быть выполнена с помощью нескольких вложенных функций ЕСЛИ. Логика та же, что и в приведенном выше примере, с той лишь разницей, что вы умножаете указанное количество на значение, возвращаемое вложенными условиями (т.е. соответствующей ценой за единицу).
Предполагая, что количество записывается в B8, формула будет такая:
=B8*ЕСЛИ(B8>=101; 12; ЕСЛИ(B8>=50; 14; ЕСЛИ(B8>=20; 16; ЕСЛИ( B8>=11; 18; ЕСЛИ(B8>=1; 22; “”)))))
И вот результат:
Как вы понимаете, этот пример демонстрирует только общий подход, и вы можете легко настроить эту вложенную функцию в зависимости от вашей конкретной задачи.
Например, вместо «жесткого кодирования» цен в самой формуле можно ссылаться на ячейки, в которых они указаны (ячейки с B2 по B6). Это позволит редактировать исходные данные без необходимости обновления самой формулы:
=B8*ЕСЛИ(B8>=101; B6; ЕСЛИ(B8>=50; B5; ЕСЛИ(B8>=20; B4; ЕСЛИ( B8>=11; B3; ЕСЛИ(B8>=1; B2; “”)))))
Аргументы функции
- logical_test (лог_выражение) – это условие, которое вы хотите протестировать. Этот аргумент функции должен быть логичным и определяемым как ЛОЖЬ или ИСТИНА. Аргументом может быть как статичное значение, так и результат функции, вычисления;
- [value_if_true] ([значение_если_истина]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если значение которое вы тестируете соответствует условию ИСТИНА;
- [value_if_false] ([значение_если_ложь]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если условие, которое вы тестируете соответствует условию ЛОЖЬ.
А если один из параметров не заполнен?
Если вас не интересует, что будет, к примеру, если интересующее вас условие не выполняется, тогда можно не вводить второй аргумент. К примеру, мы предоставляем скидку 10% в случае, если заказано более 100 единиц товара. Не указываем никакого аргумента для случая, когда условие не выполняется.
=ЕСЛИ(E2>100,F2*0.1)
Что будет в результате?
Насколько это красиво и удобно – судить вам. Думаю, лучше все же использовать оба аргумента.
И в случае, если второе условие не выполняется, но делать при этом ничего не нужно, вставьте в ячейку пустое значение.
=ЕСЛИ(E2>100,F2*0.1,””)
Однако, такая конструкция может быть использована в том случае, если значение «Истина» или «Ложь» будут использованы другими функциями Excel в качестве логических значений.
Обратите также внимание, что полученные логические значения в ячейке всегда выравниваются по центру. Это видно и на скриншоте выше.
Более того, если вам действительно нужно только проверить какое-то условие и получить «Истина» или «Ложь» («Да» или «Нет»), то вы можете использовать следующую конструкцию –
=ЕСЛИ(E2>100,ИСТИНА,ЛОЖЬ)
Обратите внимание, что кавычки здесь использовать не нужно. Если вы заключите аргументы в кавычки, то в результате выполнения функции ЕСЛИ вы получите текстовые значения, а не логические.
Функция ЕПУСТО
Если нужно определить, является ли ячейка пустой, можно использовать функцию ЕПУСТО (ISBLANK), которая имеет следующий синтаксис:
=ЕПУСТО(значение)
Аргумент значение может быть ссылкой на ячейку или диапазон. Если значение ссылается на пустую ячейку или диапазон, функция возвращает логическое значение ИСТИНА, в противном случае ЛОЖЬ.
Функции ИСТИНА и ЛОЖЬ
Функции ИСТИНА (TRUE) и ЛОЖЬ (FALSE) предоставляют альтернативный способ записи логических значений ИСТИНА и ЛОЖЬ. Эти функции не имеют аргументов и выглядят следующим образом:
=ИСТИНА()
=ЛОЖЬ()
Например, ячейка А1 содержит логическое выражение. Тогда следующая функция возвратить значение “Проходите”, если выражение в ячейке А1 имеет значение ИСТИНА:
=ЕСЛИ(А1=ИСТИНА();”Проходите”;”Стоп”)
В противном случае формула возвратит “Стоп”.
Составное условие
Составное условие состоит из простых, связанных логическими операциями И() и ИЛИ().
И() – логическая операция, требующая одновременного выполнения всех условий, связанных ею.
ИЛИ() – логическая операция, требующая выполнения любого из перечисленных условий, связанных ею.
Простое условие
Что же делает функция ЕСЛИ()? Посмотрите на схему. Здесь приведен простой пример работы функции при определении знака числа а.
Условие а>=0 определяет два возможных варианта: неотрицательное число (ноль или положительное) и отрицательное. Ниже схемы приведена запись формулы в Excel. После условия через точку с запятой перечисляются варианты действий. В случае истинности условия, в ячейке отобразится текст “неотрицательное”, иначе – “отрицательное”. То есть запись, соответствующая ветви схемы «Да», а следом – «Нет».
Текстовые данные в формуле заключаются в кавычки, а формулы и числа записывают без них.
Если результатом должны быть данные, полученные в результате вычислений, то смотрим следующий пример. Выполним увеличение неотрицательного числа на 10, а отрицательное оставим без изменений.
На схеме видно, что при выполнении условия число увеличивается на десять, и в формуле Excel записывается расчетное выражение А1+10 (выделено зеленым цветом). В противном случае число не меняется, и здесь расчетное выражение состоит только из обозначения самого числа А1 (выделено красным цветом).
Это была краткая вводная часть для начинающих, которые только начали постигать азы Excel. А теперь давайте рассмотрим более серьезный пример с использованием условной функции.
Задание:
Процентная ставка прогрессивного налога зависит от дохода. Если доход предприятия больше определенной суммы, то ставка налога выше. Используя функцию ЕСЛИ, рассчитайте сумму налога.
Решение:
Решение данной задачи видно на рисунке ниже. Но внесем все-таки ясность в эту иллюстрацию. Основные исходные данные для решения этой задачи находятся в столбцах А и В. В ячейке А5 указано пограничное значение дохода при котором изменяется ставка налогообложения. Соответствующие ставки указаны в ячейках В5 и В6. Доход фирм указан в диапазоне ячеек В9:В14. Формула расчета налога записывается в ячейку С9: =ЕСЛИ(B9>A$5;B9*B$6;B9*B$5). Эту формулу нужно скопировать в нижние ячейки (выделено желтым цветом).
В расчетной формуле адреса ячеек записаны в виде A$5, B$6, B$5. Знак доллара делает фиксированной часть адреса, перед которой он установлен, при копировании формулы. Здесь установлен запрет на изменение номера строки в адресе ячейки.
Пример функции с несколькими условиями
В функцию «ЕСЛИ» можно также вводить несколько условий. В этой ситуации применяется вложение одного оператора «ЕСЛИ» в другой. При выполнении условия в ячейке отображается заданный результат, если же условие не выполнено, то выводимый результат зависит уже от второго оператора.
- Для примера возьмем все ту же таблицу с выплатами премии к 8 марта. Но на этот раз, согласно условиям, размер премии зависит от категории работника. Женщины, имеющие статус основного персонала, получают бонус по 1000 рублей, а вспомогательный персонал получает только 500 рублей. Естественно, что мужчинам этот вид выплат вообще не положен независимо от категории.
- Первым условием является то, что если сотрудник — мужчина, то величина получаемой премии равна нулю. Если же данное значение ложно, и сотрудник не мужчина (т.е. женщина), то начинается проверка второго условия. Если женщина относится к основному персоналу, в ячейку будет выводиться значение «1000», а в обратном случае – «500». В виде формулы это будет выглядеть следующим образом:
«=ЕСЛИ(B6="муж.";"0"; ЕСЛИ(C6="Основной персонал"; "1000";"500"))»
. - Вставляем это выражение в самую верхнюю ячейку столбца «Премия к 8 марта».
- Как и в прошлый раз, «протягиваем» формулу вниз.
Пример использования «ЕСЛИ»
Теперь давайте рассмотрим конкретные примеры, где используется формула с оператором «ЕСЛИ».
- Имеем таблицу заработной платы. Всем женщинам положена премия к 8 марту в 1000 рублей. В таблице есть колонка, где указан пол сотрудников. Таким образом, нам нужно вычислить женщин из предоставленного списка и в соответствующих строках колонки «Премия к 8 марта» вписать по «1000». В то же время, если пол не будет соответствовать женскому, значение таких строк должно соответствовать «0». Функция примет такой вид:
«ЕСЛИ(B6="жен."; "1000"; "0")»
. То есть когда результатом проверки будет «истина» (если окажется, что строку данных занимает женщина с параметром «жен.»), то выполнится первое условие — «1000», а если «ложь» (любое другое значение, кроме «жен.»), то соответственно, последнее — «0». - Вписываем это выражение в самую верхнюю ячейку, где должен выводиться результат. Перед выражением ставим знак «=».
- После этого нажимаем на клавишу Enter. Теперь, чтобы данная формула появилась и в нижних ячейках, просто наводим указатель в правый нижний угол заполненной ячейки, жмем на левую кнопку мышки и, не отпуская, проводим курсором до самого низа таблицы.
- Так мы получили таблицу со столбцом, заполненным при помощи функции «ЕСЛИ».
Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
При использовании функции IF (ЕСЛИ) в Excel, вы можете использовать различные операторы для проверки состояния. Вот список операторов, которые вы можете использовать:
Если сумма баллов больше или равна “35”, то формула возвращает “Сдал”, иначе возвращается “Не сдал”.
Заключение
Одним из самых популярных и полезных инструментов в Excel является функция ЕСЛИ, которая проверяет данные на совпадение заданным нами условиям и выдает результат в автоматическом режиме, что исключает возможность ошибок из-за человеческого фактора. Поэтому, знание и умение применять этот инструмент позволит сэкономить время не только на выполнение многих задач, но и на поиски возможных ошибок из-за “ручного” режима работы.
Источники
- https://excelhack.ru/funkciya-if-esli-v-excel/
- https://statanaliz.info/excel/funktsii-i-formuly/neskolko-uslovij-funktsii-esli-eslimn-excel/
- https://mister-office.ru/funktsii-excel/function-if-excel-primery.html
- https://exceltable.com/funkcii-excel/funkciya-esli-v-excel
- https://MicroExcel.ru/operator-esli/
- https://vremya-ne-zhdet.ru/vba-excel/operatory-sravneniya/
- https://lumpics.ru/the-function-if-in-excel/
- http://on-line-teaching.com/excel/lsn024.html
- https://tvojkomp.ru/primery-usloviy-v-excel/
Функция ЗНАЧЕН
Смотрите также выделение отличий цветом. функция И. Суть чтобы программа правильноРазберем синтаксис функции:
Описание
формулу в одну столбцу, либо к
Синтаксис
ячейки, а продолжет
Теперь, куда бы абсолютную ссылку, то
-
ОшибкаЕще одним случаем возникновения– это формула, в Excel, когда Поэтому, если результатом
Примечания
-
присутствует синтаксическая ошибка. клавишу ВВОД. ПриВ этой статье описаны Эту задачу в такова: ЕСЛИ а распознала текст.Логическое_выражение – ЧТО оператор ячейку, а затем строке, либо к указывать на тот
-
я эту формулу есть неизменяемую при#ЗНАЧ! ошибки использующая оператор пересечения, аргументы массива имеют формулы оказывается такаяНапример, на рисунке выше необходимости измените ширину
Пример
синтаксис формулы и Excel решает условное = 1 И проверяет (текстовые либо протянуть за маркер обоим (в примере) же столбец или ни скопировал, хоть копировании.одна из самых#ЧИСЛО! которая должна вернуть
меньший размер, чем |
дата, то Excel |
мы намеренно пропустили |
столбцов, чтобы видеть |
использование функции форматирование. |
а = 2 |
Часто на практике одного |
числовые данные ячейки). автозаполнения, после чего$A — означает на ту же |
в P28, в |
support.office.com
Обзор ошибок, возникающих в формулах Excel
Например, в ячейке распространенных ошибок, встречающихсяявляется употребление функции, значение ячейки, находящейся результирующий массив. В возвращает подобный результат. закрывающую скобку при все данные.ЗНАЧЕНИсходные данные (таблицы, с ТОГДА значение в условия для логическойЗначение_если_истина – ЧТО появится во всех ячейках при копировании формул строку, или на
Несоответствие открывающих и закрывающих скобок
формуле все равно А1 написана формула: в Excel. Она которая при вычислении на пересечении двух этом случае вВ данном случае увеличение вводе формулы. ЕслиФормулав Microsoft Excel. которыми будем работать):
ИНАЧЕ значение с. функции мало. Когда в ячейке, когда появятся скорректированные формулы. не меняется адрес ту же самую будет написано $B$1, «=В1 + С1».
возникает, когда значение использует метод итераций диапазонов. Поскольку диапазоны незадействованных ячейках итогового ширины столбца уже нажать клавишуОписаниеПреобразует строку текста, отображающуюВыделяем первую таблицу. УсловноеФункция ИЛИ проверяет условие нужно учесть несколько текст или числоОднако может возникнуть столбца
Ячейка заполнена знаками решетки
ячейку, если символ и сумма в Это значит: сложить одного из аргументов и не может
-
- не имеют точек массива отобразятся значения не поможет.EnterРезультат число, в число.
форматирование – создать 1 или условие
- не имеют точек массива отобразятся значения не поможет.EnterРезультат число, в число.
- вариантов принятия решений, отвечают заданному условию ситуация, когда ссылка$1 — означает, $ стоит и скобках будет умножаться ячейку справа и формулы или функции вычислить результат. Ярким пересечения, формула вернет#Н/Д
Ошибка, Excel выдаст следующее=ЗНАЧЕН(«1 000 ₽»)
Ошибка #ДЕЛ/0!
ЗНАЧЕН(текст) правило – использовать 2. Как только выкладываем операторы ЕСЛИ (правдивы). на ячейку меняться при копировании не перед столбцом, и на ячейку В1, следующую справа. содержит недопустимые значения.
Ошибка #Н/Д
примером таких функций#ПУСТО!.Например, на рисунке ниже#ДЕЛ/0! предупреждение:Числовой эквивалент текстовой строкиАргументы функции ЗНАЧЕН описаны формулу для определения хотя бы одно
- друг в друга.Значение,если_ложь – ЧТО появится не должна (например, меняется адрес строки перед строкой. то есть какЕсли я эту Самые распространенные случаи в Excel являются
- . видно, что результирующийвозникает, когда вВ некоторых случаях Excel «1 000 ₽» ниже.
- форматируемых ячеек: условие истинно, то Таким образом, у в графе, когда несколько формул используютАлександра максимоваValrand() раз на нужный формулу скопирую в возникновения ошибкиСТАВКАТакже данная ошибка возникнет, массив C4:C11 больше, Excel происходит деление
предлагает свой вариант1000Текст
Ошибка #ИМЯ?
В строку формул записываем: результат будет истинным. нас получиться несколько текст или число цену, которая постоянна: «…каждая ячейка имеет
- : Переменную как бы… нам коэффициент. ячейку, например Е2,
- #ЗНАЧ!и если случайно опустить чем аргументы массива
на ноль. Это исправления ошибки. Вы
- =ЗНАЧЕН(«16:48:00»)-ЗНАЧЕН(«12:00:00») Обязательный. Текст в кавычках
- =СЧЕТЕСЛИ (сравниваемый диапазон; Суть такова: ЕСЛИ
Ошибка #ПУСТО!
функций ЕСЛИ в НЕ отвечают заданному для определенного вида свой адрес, который К примеру, вВиталий жук
- то она превратится:ВСД один из операторов A4:A8 и B4:B8. может быть, как можете либо согласитьсяЧисловой формат, эквивалентный 4 или ссылка на первая ячейка первой а = 1 Excel.
- условию (лживы). товара). В этом определяется соответствующими столбцом ячейке вводим формулу.: принять за константу в «= F2Формула пытается применить стандартные. в формуле. К
Ошибка #ЧИСЛО!
Нажав комбинацию клавиш явное деление на с Excel, либо часам 48 минутам ячейку, содержащую текст,
- таблицы)=0. Сравниваемый диапазон ИЛИ а =Синтаксис будет выглядеть следующимПример: случае необходимо использовать и строкой. Например,
- drug and drop (постоянную) + G2″. математические операторы кОшибка примеру, формулуCtrl+Shift+Enter ноль, так и исправить формулу самостоятельно.
— «16:48:00»-«12:00:00» (0,2 который нужно преобразовать. – это вторая 2 ТОГДА значение
- образом:Оператор проверяет ячейку А1 абсолютную ссылку, зафиксировав на пересечении столбца перетаскиваем ячейку. БлагодаряЗлобный карликЕсли же я тексту.#ССЫЛКА!=А1*А2*А3, получим следующий результат: деление на ячейку, В любом случае или 4:48)
Ошибка #ССЫЛКА!
Текст может быть в таблица. в ИНАЧЕ значение=ЕСЛИ(логическое_выражение;значение_если_истина;ЕСЛИ(логическое_выражение;значение_если_истина;значение_если_ложь)) и сравнивает ее столбец и/или строку А со строкой
- $ адрес в: абсолютная ссылка на поставлю $ передВ качестве аргументов функции
возникает в Excel,записать какОшибка которая содержит ноль
- слепо полагаться на0,2 любом формате, допускаемомЧтобы вбить в формулу с.Здесь оператор проверяет два
с 20. Это знаком «доллар». Например, 3 располагается ячейка функции соответственно тоже ячейку буквой В, ссылка используются данные несоответствующего когда формула ссылается=А1*А2 A3
Ошибка #ЗНАЧ!
#ИМЯ? или пуста. это исправление ниОшибки в Excel возникают в Microsoft Excel диапазон, просто выделяемФункции И и ИЛИ параметра. Если первое «логическое_выражение». Когда содержимое если ссылка выглядит А3. Такая запись меняется, а неЕвгений рыжаков
- на столбец В типа. К примеру, на ячейку, которая
- .возникает, когда вОшибка в коем случае довольно часто. Вы, для числа, даты его первую ячейку могут проверить до
- условие истинно, то графы больше 20, так: =»доллар»В»доллар»1, то называется — относительная копируется, как без: постоянный адрес ячейки. станет абсолютной. Если номер столбца в не существует или
Ошибка формуле присутствует имя,#Н/Д нельзя. Например, на наверняка, замечали странные или времени. Если и последнюю. «= 30 условий.
формула возвращает первый
office-guru.ru
Что означает знак $ при написании формул в excel
появляется истинная надпись при автозаполнении все ссылка. Если Вы $. если скажем формула
я поставлю $ функции удалена.#ЧИСЛО! которое Excel невозникает, когда для
следующем рисунке Excel значения в ячейках, текст не соответствует 0» означает командуПример использования оператора И: аргумент – истину.
«больше 20». Нет ячейки будут содержать переместите ячейку, формула,Makfromkz в ячейке A4 перед цифрой 1,ВПРНапример, на рисунке нижевозникает, когда проблема понимает. формулы или функции предложил нам неправильное вместо ожидаемого результата, ни одному из поиска точных (аПример использования функции ИЛИ: Ложно – оператор – «меньше или формулу =»доллар»В»доллар»1.»
содержащая относительную ссылку: из справки Excel: ссылается на ячейку ссылка на строкузадан числом меньше представлена формула, которая в формуле связанаНапример, используется текст не недоступно какое-то значение. решение. которые начинались со этих форматов, то не приблизительных) значений.Пользователям часто приходится сравнить проверяет второе условие. равно 20».Логический оператор ЕСЛИ в на эту ячейкуАбсолютный адрес ячейки. B5, то если 1 станет абсолютной. 1.
суммирует значения двух со значением. заключенный в двойные
Приведем несколько случаевБывают случаи, когда ячейка знака
функция ЗНАЧЕН возвращаетВыбираем формат и устанавливаем, две таблицы вПримеры несколько условий функцииВнимание! Слова в формуле Excel применяется для будет изменена так, Точный адрес ячейки скопировать формулу, скажем В результате формулаАргумент функции должен иметь ячеек.Например, задано отрицательное значение кавычки: возникновения ошибки в Excel полностью
# значение ошибки #ЗНАЧ!. как изменятся ячейки Excel на совпадения.
Что означает символ $ в Excel, например здесь: СМЕЩ ($C1;0;СЧЁТ ($C1:$AA1)-5;1;5)
ЕСЛИ в Excel: необходимо брать в записи определенных условий. чтобы обращаться уже в формуле, ссылающийся в A6, ссылка в А1 «=$В1 единственное значение, аЕсли удалить столбец B, там, где должноФункция ссылается на имя#Н/Д заполнена знаками решетки.. Это говорит оОбычно функцию ЗНАЧЕН не при соблюдении формулы.
Примеры из «жизни»:Таблица для анализа успеваемости. кавычки. Чтобы Excel Сопоставляются числа и/или к новой ячейке. на данную ячейку будет на ячейку + С$1″ при вместо этого ему формула вернет ошибку быть положительное. Яркий
диапазона, которое не:
Это означает один том, что формула требуется использовать в Лучше сделать заливку сопоставить цены на Ученик получил 5 понял, что нужно текст, функции, формулы
Например, Вы ввели независимо от положения B7. если изменить копировании в Е2 присваивают целый диапазон.#ССЫЛКА! пример – квадратный существует или написано
Функция поиска не находит из двух вариантов: возвращает ошибку. Чтобы формулах, поскольку необходимые цветом. товар в разные баллов – «отлично». выводить текстовые значения.
и т.д. Когда формулу =А3, после ячейки с формулой. ссылку на $B$5
превратится в «=$В2 На рисунке ниже.
Что означает «$» в экселе. в формуле ячейки =$A$3*(100%-A31) стоит $ что он означает
корень из отрицательного с опечаткой: соответствия. К примеру,Столбец недостаточно широк для избавиться от ошибки, преобразования значений выполняютсяВыделяем вторую таблицу. Условное привозы, сравнить балансы 4 – «хорошо».Еще один пример. Чтобы значения отвечают заданным чего переместили ячейку Абсолютный адрес ячейки (можно клавишей F4) + G$1″, то в качестве искомогоЕще пример. Формула в числа.В данном примере имя функция отображения всего содержимого Вы должны исправить в Microsoft Excel форматирование – создать (бухгалтерские отчеты) за 3 – «удовлетворительно». получить допуск к параметрам, то появляется А3 на одну имеет формат $A$1. то куда бы есть части формул, значения функции ячейке B2 ссылаетсяК тому же, ошибка диапазон не определено.ВПР ячейки. Для решения ее причину, а автоматически. Эта функция
правило – использовать несколько месяцев, успеваемость Оператор ЕСЛИ проверяет экзамену, студенты группы одна запись. Не позицию вниз. ТеперьИ при копировании формулу не переносили, перед которыми стоятВПР на ячейку B1,#ЧИСЛО!Адрес указан без разделяющегопри точном поиске проблемы достаточно увеличить они могут быть предназначена для обеспечения
Функция ЕСЛИ в Excel с примерами нескольких условий
формулу. Применяем тот учеников (студентов) разных 2 условия: равенство должны успешно сдать отвечают – другая. формула будет выглядеть формулы абсолютный адрес всё равно будет $, останутся неизменнымииспользуется диапазон A6:A8.
т.е. на ячейку,возникает, когда возвращается двоеточия: вернет ошибку ширину столбца, чтобы самыми разными.
Синтаксис функции ЕСЛИ с одним условием
совместимости с другими же оператор (СЧЕТЕСЛИ). классов, в разные значения в ячейке
зачет. Результаты занесем
Логические функции – это
так: =А4. Причем не меняется, что B5.
при любом копировании.Вот и все! Мы расположенную выше на слишком большое илиВ имени функции допущена
#Н/Д все данные отобразились…Самым распространенным примером возникновения программами электронных таблиц.Скачать все примеры функции
четверти и т.д.
5 и 4. в таблицу с очень простой и эксел сделает это применяют для ссылокМобайл азс mobile azsЕсли же, например, разобрали типичные ситуации 1 строку.
слишком малое значение. опечатка:, если соответствий не…или изменить числовой формат ошибок в формулах
Скопируйте образец данных из ЕСЛИ в ExcelЧтобы сравнить 2 таблицыВ этом примере мы графами: список студентов, эффективный инструмент, который автоматически, Вам не на какие-то общие
: Дане работает F4 формула выглядит так: возникновения ошибок вЕсли мы скопируем данную Например, формулаОшибка найдено. ячейки. Excel является несоответствие
следующей таблицы и
Функция ЕСЛИ в Excel с несколькими условиями
Здесь вместо первой и в Excel, можно добавили третье условие, зачет, экзамен. часто применяется в надо заботиться о для всех формул вы че народ «=В1*(С1+С2)», причем в Excel. Зная причину формулу в любую
=1000^1000#ПУСТО!
Формула прямо или косвенно
В ячейке содержится формула, открывающих и закрывающих вставьте их в последней ячейки диапазона воспользоваться оператором СЧЕТЕСЛИ. подразумевающее наличие вОбратите внимание: оператор ЕСЛИ
практике. Рассмотрим подробно корректировке формул после
значения, например курс то дурите В1 записан некий ошибки, гораздо проще ячейку 1-й строкивернет как развозникает, когда задано обращается к ячейке, которая возвращает некорректное
скобок. Когда пользователь ячейку A1 нового мы вставили имя Рассмотрим порядок применения табеле успеваемости еще должен проверить не на примерах.
Расширение функционала с помощью операторов «И» и «ИЛИ»
перемещения ячеек. Это валюты, константыДаниил башмаков коэффициент, который должен исправить ее. Успехов (например, ячейку D1), эту ошибку. пересечение двух диапазонов,
в которой отображается значение даты или вводит формулу, Excel листа Excel. Чтобы столбца, которое присвоили функции. и «двоек». Принцип цифровой тип данных,Синтаксис оператора в Excel удобно и вТ. к. адрес: Статическая ссылка. При
одинаково умножаться на Вам в изучении формула вернет ошибку
Не забывайте, что Excel
не имеющих общих
Как сравнить данные в двух таблицах
значение времени. Думаю, Вы автоматически проверяет ее отобразить результаты формул, ему заранее. МожноДля примера возьмем две «срабатывания» оператора ЕСЛИ а текстовый. Поэтому – строение функции, том случае, если имеет две координаты, копировании формулы в
все ячейки таблицы, Excel!#ССЫЛКА! поддерживает числовые величины точек.
#Н/Д знаете, что Excel синтаксис и не выделите их и заполнять формулу любым таблицы с техническими тот же. мы прописали в
необходимые для ее Вы заполняете ячейки
то абсолютную адресацию другую ячейку ссылка то эту ячейкуАвтор: Антон Андронов, т.к. в ней
от -1Е-307 доНапример,. не поддерживает даты даст закончить ввод, нажмите клавишу F2,
из способов. Но характеристиками разных кухонныхКогда нужно проверить несколько формуле В2= «зач.». работы данные. с помощью автозаполнения. можно применять к
не сместится вслед нужно сделать целикомУдачник будет присутствовать ссылка 1Е+307.
=А1:А10 C5:E5При работе с массивами до 1900 года. пока в ней а затем —
с именем проще. комбайнов. Мы задумали
истинных условий, используется В кавычки берем,=ЕСЛИ (логическое_выражение;значение_если_истина;значение_если_ложь) Вам достаточно ввести каждой: либо к за её родительской абсолютной, пишем $B$1.: Знак $ означает
exceltable.com
на несуществующую ячейку.
Функция ЕСЛИ
В этом курсе:
Функция ЕСЛИ — одна из самых популярных функций в Excel. Она позволяет выполнять логические сравнения значений и ожидаемых результатов.
Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.
Например, функция =ЕСЛИ(C2=»Да»;1;2) означает следующее: ЕСЛИ(С2=»Да», то вернуть 1, в противном случае вернуть 2).
Функция ЕСЛИ, одна из логических функций, служит для возвращения разных значений в зависимости от того, соблюдается ли условие.
ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])
Условие, которое нужно проверить.
Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.
Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.
Простые примеры функции ЕСЛИ
В примере выше ячейка D2 содержит формулу: ЕСЛИ(C2 = Да, то вернуть 1, в противном случае вернуть 2)
В этом примере ячейка D2 содержит формулу: ЕСЛИ(C2 = 1, то вернуть текст «Да», в противном случае вернуть текст «Нет»). Как видите, функцию ЕСЛИ можно использовать для сравнения и текста, и значений. А еще с ее помощью можно оценивать ошибки. Вы можете не только проверять, равно ли одно значение другому, возвращая один результат, но и использовать математические операторы и выполнять дополнительные вычисления в зависимости от условий. Для выполнения нескольких сравнений можно использовать несколько вложенных функций ЕСЛИ.
B2;»Превышение бюджета»,»В пределах бюджета»)» />
=ЕСЛИ(C2>B2;»Превышение бюджета»;»В пределах бюджета»)
В примере выше функция ЕСЛИ в ячейке D2 означает: ЕСЛИ(C2 больше B2, то вернуть текст «Превышение бюджета», в противном случае вернуть текст «В пределах бюджета»)
B2;C2-B2;»»)» />
На рисунке выше мы возвращаем не текст, а результат математического вычисления. Формула в ячейке E2 означает: ЕСЛИ(значение «Фактические» больше значения «Плановые», то вычесть сумму «Плановые» из суммы «Фактические», в противном случае ничего не возвращать).
В этом примере формула в ячейке F7 означает: ЕСЛИ(E7 = «Да», то вычислить общую сумму в ячейке F5 и умножить на 8,25 %, в противном случае налога с продажи нет, поэтому вернуть 0)
Примечание: Если вы используете текст в формулах, заключайте его в кавычки (пример: «Текст»). Единственное исключение — слова ИСТИНА и ЛОЖЬ, которые Excel распознает автоматически.
Функция ЕСЛИ() в MS EXCEL
Функция ЕСЛИ() относится к наиболее часто используемым функциям.
Синтаксис функции
ЕСЛИ(лог_выражение;значение_если_истина;[значение_если_ложь])
Лог_выражение — любое значение или выражение, принимающее значения ИСТИНА или ЛОЖЬ.
=ЕСЛИ(A1>=100;»Бюджет превышен»;»ОК!»)
Т.е. если в ячейке A1 содержится значение большее или равное 100, то формула вернет ОК!, а если нет, то Бюджет превышен.
В качестве аргументов функции, могут участвовать формулы, например:
=ЕСЛИ(A1>100;СУММ(B1:B10);СУММ(C1:C10))
Т.е. если в ячейке A1 содержится значение >100, то суммирование ведется по столбцу B, а если меньше, то по столбцу С.
Вложенные ЕСЛИ
В EXCEL 2007 в качестве значений аргументов значение_если_истина и значение_если_ложь можно для построения более сложных проверок использовать до 64 вложенных друг в друга функций ЕСЛИ() .
=ЕСЛИ(A1>=100;»Бюджет превышен»;ЕСЛИ(A1>=90;»Крупный проект»;ЕСЛИ(A1>=50;»Средний проект»;»Малый проект «)))
Вышеуказанную формулу можно усложнять и дальше, но есть другие подходы:
Для функции ВПР() необходимо создать в диапазоне A3:B6 таблицу значений:
Если требуется вывести разный текст в случае наличия в ячейке А1 отрицательного значения, положительного значения или 0, то можно записать следующую формулу:
или, если требуется вместо текстовых значений вывести формулы, можно использовать ссылки на диапазон ячеек (содержащих формулы)
=ПРОСМОТР(A24;<-1E+307;0;1E-307>;A27:A29) (см. файл примера )
Опущен третий аргумент [значение_если_ложь]
Третий аргумент функции не обязателен, если его опустить, то функция вернет значение ЛОЖЬ (если условие не выполнено).
=ЕСЛИ(A1>100;»Бюджет превышен»)
Если в ячейке A1 содержится значение 1, то вышеуказанная формула вернет значение ЛОЖЬ.
Вместо ИСТИНА или ЛОЖЬ в первом аргументе введено число
Т.к. значение ЛОЖЬ эквивалентно 0, то формулы
=ЕСЛИ(0;»Бюджет превышен»;»ОК!»)
или (если в ячейке A1 содержится значение 0)
=ЕСЛИ(A1;»Бюджет превышен»;»ОК!»)
вернут ОК!
Если в ячейке A1 находится любое другое число кроме 0, то формула вернет Бюджет превышен. Такой подход удобен, когда проверяется равенство значения нулю.
Связь функции ЕСЛИ() с другими функциями использующие условия
EXCEL содержит также другие функции, которые можно применять для анализа данных с использованием условий. Например, для подсчета количества вхождений чисел в диапазоне ячеек используется функция СЧЁТЕСЛИ() , а для сложения значений, удовлетворяющих определенным условиям, используется функция СУММЕСЛИ() .
Функция ЕСЛИ() , как альтернативный вариант, может быть также использована для подсчета и сложения значений с использованием условий. Ниже приведены иллюстрирующие примеры.
Пусть данные находятся в диапазоне A6:A11 (см. файл примера)
Подсчитаем сумму значений, которые больше 10 с помощью функции СУММЕСЛИ() , записав =СУММЕСЛИ(A6:A11;»>10″) . Аналогичный результат (23) можно получить с помощью формулы массива
=СУММ(ЕСЛИ(A6:A11>10;A6:A11))
(для ввода формулы в ячейку вместо ENTER нужно нажать CTRL+SHIFT+ENTER)
Теперь подсчитаем количество вхождений чисел больше 10 в диапазоне ячеек A6:A11 =СЧЁТЕСЛИ(A6:A11;»>10″) . Аналогичный результат (2) можно получить с помощью формулы массива
=СЧЁТ(ЕСЛИ(A6:A11>10;A6:A11))
Теперь, когда принцип понятен, с помощью функции ЕСЛИ() можно конструировать и другие формулы с условиями. Например, нахождение минимального значения среди чисел больше 10:
=МИН(ЕСЛИ(A6:A11>10;A6:A11))
Функция ЕСЛИ в Excel с примерами нескольких условий
Логический оператор ЕСЛИ в Excel применяется для записи определенных условий. Сопоставляются числа и/или текст, функции, формулы и т.д. Когда значения отвечают заданным параметрам, то появляется одна запись. Не отвечают – другая.
Логические функции – это очень простой и эффективный инструмент, который часто применяется в практике. Рассмотрим подробно на примерах.
Синтаксис функции ЕСЛИ с одним условием
Синтаксис оператора в Excel – строение функции, необходимые для ее работы данные.
Разберем синтаксис функции:
Логическое_выражение – ЧТО оператор проверяет (текстовые либо числовые данные ячейки).
Значение_если_истина – ЧТО появится в ячейке, когда текст или число отвечают заданному условию (правдивы).
Значение,если_ложь – ЧТО появится в графе, когда текст или число НЕ отвечают заданному условию (лживы).
Оператор проверяет ячейку А1 и сравнивает ее с 20. Это «логическое_выражение». Когда содержимое графы больше 20, появляется истинная надпись «больше 20». Нет – «меньше или равно 20».
Внимание! Слова в формуле необходимо брать в кавычки. Чтобы Excel понял, что нужно выводить текстовые значения.
Еще один пример. Чтобы получить допуск к экзамену, студенты группы должны успешно сдать зачет. Результаты занесем в таблицу с графами: список студентов, зачет, экзамен.
Обратите внимание: оператор ЕСЛИ должен проверить не цифровой тип данных, а текстовый. Поэтому мы прописали в формуле В2= «зач.». В кавычки берем, чтобы программа правильно распознала текст.
Функция ЕСЛИ в Excel с несколькими условиями
Часто на практике одного условия для логической функции мало. Когда нужно учесть несколько вариантов принятия решений, выкладываем операторы ЕСЛИ друг в друга. Таким образом, у нас получиться несколько функций ЕСЛИ в Excel.
Синтаксис будет выглядеть следующим образом:
Здесь оператор проверяет два параметра. Если первое условие истинно, то формула возвращает первый аргумент – истину. Ложно – оператор проверяет второе условие.
Примеры несколько условий функции ЕСЛИ в Excel:
Таблица для анализа успеваемости. Ученик получил 5 баллов – «отлично». 4 – «хорошо». 3 – «удовлетворительно». Оператор ЕСЛИ проверяет 2 условия: равенство значения в ячейке 5 и 4.
В этом примере мы добавили третье условие, подразумевающее наличие в табеле успеваемости еще и «двоек». Принцип «срабатывания» оператора ЕСЛИ тот же.
Расширение функционала с помощью операторов «И» и «ИЛИ»
Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функции И и ИЛИ могут проверить до 30 условий.
Пример использования оператора И:
Пример использования функции ИЛИ:
Как сравнить данные в двух таблицах
Пользователям часто приходится сравнить две таблицы в Excel на совпадения. Примеры из «жизни»: сопоставить цены на товар в разные привозы, сравнить балансы (бухгалтерские отчеты) за несколько месяцев, успеваемость учеников (студентов) разных классов, в разные четверти и т.д.
Чтобы сравнить 2 таблицы в Excel, можно воспользоваться оператором СЧЕТЕСЛИ. Рассмотрим порядок применения функции.
Для примера возьмем две таблицы с техническими характеристиками разных кухонных комбайнов. Мы задумали выделение отличий цветом. Эту задачу в Excel решает условное форматирование.
Исходные данные (таблицы, с которыми будем работать):
Выделяем первую таблицу. Условное форматирование – создать правило – использовать формулу для определения форматируемых ячеек:
В строку формул записываем: =СЧЕТЕСЛИ (сравниваемый диапазон; первая ячейка первой таблицы)=0. Сравниваемый диапазон – это вторая таблица.
Чтобы вбить в формулу диапазон, просто выделяем его первую ячейку и последнюю. «= 0» означает команду поиска точных (а не приблизительных) значений.
Выбираем формат и устанавливаем, как изменятся ячейки при соблюдении формулы. Лучше сделать заливку цветом.
Выделяем вторую таблицу. Условное форматирование – создать правило – использовать формулу. Применяем тот же оператор (СЧЕТЕСЛИ).
Здесь вместо первой и последней ячейки диапазона мы вставили имя столбца, которое присвоили ему заранее. Можно заполнять формулу любым из способов. Но с именем проще.
Используем функцию «Если» в Excel
Одна из самых популярных функций в приложении Excel – ЕСЛИ. Это логическое сравнение значения и получаемого результата. Если говорить проще, то функция может звучать так:
ЕСЛИ условие истинно, то выполняем это, а иначе делаем что-либо еще
Синтаксис этой функции достаточно прост:
ЕСЛИ (логическое_условие; значение_в_случае_ИСТИНА; значение в случае_ЛОЖЬ)
- Логическое_условие – значение, которое будем проверять
- Значение_в_случае_ИСТИНА – действие, когда требование выполняется
- Значение в случае_ЛОЖЬ – действие, когда Логическое_условие не выполняется
Как использовать функцию
На скриншотах ниже показан самый просто вариант использования. Мы сначала проверяем заданное условие А1>25. ЕСЛИ это требование выполняется, тогда выводим в ячейку «больше 25», иначе «меньше или равно 25».
Теперь более сложное задание. Ниже мы рассмотрим пример переаттестации сотрудников предприятия. Изначально таблица выглядит так:
Нам необходимо в столбце С вывести результаты переаттестации, которые могут принимать бинарное значение: СДАЛ или НЕ СДАЛ. Критерии у нас будут такими: кто набрал более 45 балов, тот считается сдавшим экзамен, ну а все остальные нет.
Для выполнения задачи необходимо:
- Выбрать ту ячейку, в которой будем в водить формулу. У нас это С3.
- Затем определяемся с необходимыми параметрами:
- Логическое_условие – B3>45
- Значение_в_случае_ИСТИНА – Сдал
- Значение_в_случае_ЛОЖЬ – не сдал
- Таким образом, получаем формулу =ЕСЛИ (В3>45; «Сдал»; «Не сдал»)
- Формула будет сравнивать число в ячейке В3 и 45. Если наше требование выполняется и Баллы больше 45, то в ячейке результата мы увидим «Сдал», иначе «Не сдал».
- Копируем формулу в каждую ячейку удобным способом, и смотрим результат.
Используем несколько условий
При необходимости, функцию ЕСЛИ можно вложить друг в друга. Таким образом, мы расширим варианты решений.
Для примера, возьмем переаттестацию сотрудников, которую рассмотрели раньше. Изменим критерии результата и выставим каждому оценку: Плохо, Хорошо и Отлично. Отлично будем ставить, когда баллы превысят 60. Оценку Хорошо можно будет получить, набрав от 45 до 60 балов. Ну и в остальных случаях ставим Плохо.
- Для решения этой задачи составим формулу, включив в нее необходимые критерии оценивания: =ЕСЛИ (В3>60;»Отлично»;ЕСЛИ(B2>45;»Хорошо»;»Плохо»)).
- Эта формула использует одновременно два условия. Первая проверка В3>60. Если баллы действительно больше 60, то в поле Результата мы получаем Отлично, и дальнейшая проверка условий не выполняется. Если Баллы меньше 60, то срабатывает вторая часть формулы, и мы проверяем В3>45 или нет. Если все верно, то возвращается значение «Хорошо», иначе «Плохо».
- Затем достаточно скопировать формулу во все ячейки столбца и увидеть результат сдачи переаттестации.
Как видно из примера, вместо второго и третьего значения функции можно подставлять условие. Таким способом добавляем необходимое число вложений. Однако стоит отметить, что после добавления 3-5 вложений работать с формулой станет практически невозможно, т.к. она будет очень громоздкой.
Другие варианты использования функции
Находим сумму столбцов или ячеек
К примеру, есть необходимость просуммировать каждую вторую ячейку столбца. В этом случае поможет использование оператора СУММЕСЛИ. Он позволит работать только с теми столбцами, которые попадают под наши требования. Мы будет рассматривать случай, когда необходимо суммировать элементы в нечетных строках.
Для решения задачи, нам потребуется вставить дополнительный столбец и пронумеровать строки 1 и 0. Именно эти данные мы будем использовать в нашей формуле. В примере видно, какую формулу мы использовали.
Синтаксис: СУММЕСЛИ(диапазон_ячеек; используемое_условие; [диапазон_суммирования])
- Диапазон – обязательный аргумент. Тут задается диапазон, который оценивается на соответствие условию.
- Используемое_условие – тут указываем, какие именно ячейки необходимо суммировать.
- Диапазон_суммирования – указываем, какой именно диапазон использовать для суммирования.
Количество повторений элементов на листе
В этом случае мы можем посчитать, сколько раз заданный элемент встречается на листе. Для этого используем функцию СЧЕТЕСЛИ. Она считает количество ячеек, которые совпадают с заданным значением.
В этом примере мы считаем, сколько клиентов находится в каждом городе. В формуле мы задаем первым диапазон, а вторым значения, которые следует искать.
Используем СЧЕТЕСЛИ и СУММЕСЛИ при подсчете данных
В примере мы постараемся определить усредненный объем дохода от клиентов по каждому городу. Для этого поделим суммарный доход города на количество клиентов.
Поиск нескольких вхождений элемента в списке
Если у нас есть постоянно обновляемый список данных, в котором по мере роста могут появляться дубликаты, то поиск вхождений в этом списке может оказаться затруднительным. Для решения этой задачи проще всего воспользоваться функцией ВПР и СЧЕТЕСЛИ.
Для начала, добавим дополнительный столбец, который добавить порядковый номер вхождения к имени клиента. В результате, первое упоминание элемента будет выдавать Имя1, следующее Имя2 и т.д.
Используем поиск по клиенту Кристина Агилера. Используя формулу ВПР («Кристина Агилера3», диапазон_поиска, 2, ЛОЖЬ), мы получим третий номер этого клиента. В формуле, последним значением ставим ЛОЖЬ, поскольку список не сортирован, и нам необходимо точное совпадение элементов.
Как сократить количество вложений ЕСЛИ
Версии до EXCEL 2003 включительно поддерживали до 7 уровней вложенности ЕСЛИ. Начиная с версии Excel 2007, это ограничение убрали. Но стоит заметить, что ниже 3-4 уровня вложенности мало кто опускается.
Для того чтобы уменьшить количество использования вложений ЕСЛИ, можно использовать функцию ВЫБОР. Она работает со значениями или действиями из заданного списка по номеру индекса.
Синтаксис: ВЫБОР (номер_индекса; значение_индекса1; значение_индекса2; [значение_индекса3];…)
Для примера, функция ВЫБОР (1; «Третий»; «Второй»; «Первый»), вернет нам слово «Третий», если мы ее добавим в ячейку.
Стоит отметить, что имеются некоторые ограничения. В частности, в качестве индекса могут выступать только числа.
Функции Excel ЕСЛИ (IF) и ЕСЛИМН (IFS) для нескольких условий
Логическая функция ЕСЛИ в Экселе – одна из самых востребованных. Она возвращает результат (значение или другую формулу) в зависимости от условия.
Функция ЕСЛИ в Excel
Функция имеет следующий синтаксис.
ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])
лог_выражение – это проверяемое условие. Например, A2 30) не выполняется и возвращается альтернативное значение, указанное в третьем поле. В этом вся суть функции ЕСЛИ. Протягивая расчет вниз, получаем результат по каждому товару.
Однако это был демонстрационный пример. Чаще формулу Эксель ЕСЛИ используют для более сложных проверок. Допустим, есть средненедельные продажи товаров и их остатки на текущий момент. Закупщику нужно сделать прогноз остатков через 2 недели. Для этого нужно от текущих запасов отнять удвоенные средненедельные продажи.
Пока все логично, но смущают минусы. Разве бывают отрицательные остатки? Нет, конечно. Запасы не могут быть ниже нуля. Чтобы прогноз был корректным, нужно отрицательные значения заменить нулями. Здесь отлично поможет формула ЕСЛИ. Она будет проверять полученное по прогнозу значение и если оно окажется меньше нуля, то принудительно выдаст ответ 0, в противном случае — результат расчета, т.е. некоторое положительное число. В общем, та же логика, только вместо значений используем формулу в качестве условия.
В прогнозе запасов больше нет отрицательных значений, что в целом очень неплохо.
Формулы Excel ЕСЛИ также активно используют в формулах массивов. Здесь мы не будем далеко углубляться. Заинтересованным рекомендую прочитать статью о том, как рассчитать максимальное и минимальное значение по условию. Правда, расчет в той статье более не актуален, т.к. в Excel 2016 появились функции МИНЕСЛИ и МАКСЕСЛИ. Но для примера очень полезно ознакомиться – пригодится в другой ситуации.
Формула ЕСЛИ в Excel – примеры нескольких условий
Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.
Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.
Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2 =1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.
Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН.
На чтение 7 мин. Просмотров 29.9k.
Содержание
- Получить первое не пустое значение в списке
- Получить первое текстовое значение в списке
- Получить первое текстовое значение с ГПР
- Получить позицию последнего совпадения
- Получить последнее совпадение содержимого ячейки
- Получить n-е совпадение
- Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
- Получить n-ое совпадение с ВПР
- Если ячейка содержит одну из многих вещей
- Поиск первой ошибки
- Поиск следующего наибольшего значения
- Несколько совпадений в списке, разделенных запятой
- Частичное совпадение чисел с шаблоном
- Частичное совпадение с ВПР
- Положение первого частичного совпадения
Получить первое не пустое значение в списке
{ = ИНДЕКС( диапазон ; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( диапазон ); 0 )) }
Если вам нужно получить первое не пустое значение (текст или число) в диапазоне в одной колонке вы можете использовать формулу массива на основе функций ИНДЕКС, ПОИСКПОЗ и ЕПУСТО.
В данном примере мы используем эту формулу:
{ = ИНДЕКС( B3: B11; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( B3: B11 ); 0 )) }
Таким образом, суть проблемы заключается в следующем: мы хотим получить первую не пустую ячейку, но для этого нет конкретной формулы в Excel. Мы могли бы использовать ВПР с шаблоном *, но это будет работать только для текста, а не для чисел.
Таким образом, нам нужно строить функциональные возможности для нужных нам формул. Способ сделать это состоит в использовании функции массива, которая «тестирует» ячейки и возвращает массив истина/ложь значения, которые мы можем сопрягать с ПОИСКПОЗ.
Работая изнутри, ЕПУСТО оценивает ячейки в диапазоне В3: В11 и возвращает результат и массив, который выглядит следующим образом:
{ИСТИНА; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА}
Каждая ЛОЖЬ представляет собой ячейку в диапазоне, который не является пустой.
Далее, ПОИСКПОЗ ищет ЛОЖЬ внутри массива и возвращает позицию первого наденного совпадения, в этом случае 2. На данный момент, формула в примере теперь выглядит следующим образом:
{ = ИНДЕКС( B3: B11; 2; 0 )) }
И, наконец, функция ИНДЕКС выводит значение в положении 2 в массиве, в этом случае число 10.
Получить первое текстовое значение в списке
= ВПР ( «*»; диапазон; 1; ЛОЖЬ)
Если вам нужно получить первое текстовое значение в списке (диапазон один столбец), вы можете использовать функцию ВПР, чтобы установить точное соответствие, с шаблонным символом для поиска.
В данном примере формула в D7 является:
= ВПР ( «*» ; B5: B11 ; 1 ; ЛОЖЬ)
Групповой символ звездочка (*) соответствует любому текстовому значению.
Получить первое текстовое значение с ГПР
= ГПР ( «*»; диапазон; 1; ЛОЖЬ)
Для поиска и получения первого текстового значения во всем диапазоне столбцов, вы можете использовать функцию ГПР с групповым символом. В примере формула в F5 является:
= ГПР ( «*»; С5: Е5; 1; 0 )
Значение поиска является «*», групповым символом, который соответствует одному или более текстовому значению.
Получить позицию последнего совпадения
{ = МАКС( ЕСЛИ ( Величины = знач ; СТРОКА(величина) — СТРОКА(ИНДЕКС( Величины; 1 ; 1 )) + 1 )) }
Для того, чтобы получить позицию последнего совпадения (т.е. последнего вхождения) от значения поиска, вы можете использовать формулу, основанную на ЕСЛИ, СТРОКА, ИНДЕКС, ПОИСКПОЗ и MAКС функций.
В примере формула в G6:
=МАКС(ЕСЛИ(B4:B11=G5;СТРОКА(B4:B11)-СТРОКА(ИНДЕКС(B4:B11;1;1))+1))
Суть этой формулы состоит в том, что мы строим список номеров строк для данного диапазона, соответствующие по значению, а затем используем функцию MAКС, чтобы получить наибольшее количество строк, что соответствует последнему значению соответствия.
Получить последнее совпадение содержимого ячейки
= ПРОСМОТР( 2 ; 1 / ПОИСК ( вещи ; А1 ); вещи )
Чтобы проверить ячейку для одной из нескольких вещей, и вернуть последнее совпадение, найденное в списке, вы можете использовать формулу, основанную на ПРОСМОТР и ПОИСК функций. В случае нескольких найденных совпадений, формула вернет последнее совпадение из списка «вещей».
В примере формула в С5:
=ПРОСМОТР(2;1/ПОИСК($E$4:$E$7;B4);$E$4:$E$7)
Получить n-е совпадение
= НАИМЕНЬШИЙ( ЕСЛИ( логический тест; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); n )
Для того, чтобы получить позицию n-го совпадения (например, второе значение соответствия заданному, третье значение соответствия и т.д.), вы можете использовать формулу, основанную на функции НАИМЕНЬШИЙ.
= НАИМЕНЬШИЙ( ЕСЛИ( список = E5 ; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); F5 )
Эта формула возвращает позицию второго появления «красных» в списке.
Сутью этой формулы является функция НАИМЕНЬШИЙ, которая просто возвращает n-е наименьшее значение в списке значений, которое соответствует номеру строки. Номера строк были «отфильтрованы» функцией ЕСЛИ, которая применяет логику для совпадения.
Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
{ = ИНДЕКС( массив; НАИМЕНЬШИЙ( ЕСЛИ( величины = знач ; СТРОКА ( величины ) — СТРОКА ( ИНДЕКС( величины; 1 ; 1 )) + 1 ); n-й )) }
Чтобы получить n-ое совпадение, используя ИНДЕКС и ПОИСКПОЗ, вы можете использовать формулу массива с функциями ЕСЛИ и НАИМЕНЬШИЙ, чтобы выяснить номер строки совпадения.
Получить n-ое совпадение с ВПР
= ВПР( id_формулы; стол; 4; 0 )
Чтобы получить n-ое совпадение с ВПР, вам необходимо добавить вспомогательный столбец в таблицу , которая строит уникальный идентификатор , который включает счетчик.
Эта формула зависит от вспомогательного столбца, который добавляется в качестве первого столбца таблицы исходных данных. Вспомогательный столбец содержит формулу, которая строит уникальное значение взгляда вверх от существующего идентификатора и счетчика. Счетчик подсчитывает сколько раз уникальный идентификатор появился в таблице данных.
В примере, формула ячейки J6 вспомогательного столбца выглядит следующим образом:
=ВПР(J3&»-«&I6;B4:G11;4;0)
Если ячейка содержит одну из многих вещей
{ = ИНДЕКС( результаты ;ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК( вещи ; A1 )); 0 )) }
Чтобы проверить ячейку для одной из нескольких вещей, и вернуть пользовательский результат для первого найденного совпадения, вы можете использовать формулу ИНДЕКС/ПОИСКПОЗ, основанную на функции поиска.
{ = ИНДЕКС( результаты ; ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК ( вещи ; B5 )); 0 )) }
Эта формула использует два названных диапазона: E5: E8 называется «вещи» и F5: F8 называется «Результаты». Убедитесь, что вы используете диапазоны имен с одинаковыми именами (на основе ваших данных). Если вы не хотите использовать именованные диапазоны, используйте абсолютные ссылки вместо этого.
Поиск первой ошибки
{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА(диап ); 0 ) }
Если вам нужно найти первую ошибку в диапазоне ячеек, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ЕОШИБКА функциях.
В приведенном примере формула:
{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА( B4: B11 ); 0 ) }
Работая изнутри, функция ЕОШИБКА возвращает значение ИСТИНА, если значение является признанной ошибкой, и ЛОЖЬ, если нет.
Когда дается диапазон ячеек (массив ячеек) функция ЕОШИБКА будет возвращать массив истина/ложь значений. В примере, это результирующий массив выглядит следующим образом:
{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ}
Обратите внимание, что 6-е значение (что соответствует 6-й ячейке в диапазоне) истинно, так как ячейка В9 содержит #Н/A.
Поиск следующего наибольшего значения
=ИНДЕКС ( данные; ПОИСКПОЗ( поиск ; значения ) + 1 )
Для того, чтобы найти «следующее наибольшее» значение в справочной таблице, можно использовать формулу, основанную на ИНДЕКС и ПОИСКПОЗ. В примере формула в F6 является:
=ИНДЕКС(C5:C9;ПОИСКПОЗ(F4;B5:B9)+1)
Несколько совпадений в списке, разделенных запятой
{ = ОБЪЕДИНИТЬ ( «;» ; ИСТИНА ; ЕСЛИ( диапазон1 = E5 ; диапазон2 ; «» )) }
Для поиска и извлечения нескольких совпадений, разделенных запятыми (в одной ячейке), вы можете использовать функцию ЕСЛИ с функцией ОБЪЕДИНИТЬ.
{ = ОБЪЕДИНИТЬ( «;» ; ИСТИНА ; ЕСЛИ( группа = E5 ; имя ; «» )) }
Эта формула использует «имя» — именованный диапазон (B5: B11) и «группа» — (C5: C11).
Частичное совпадение чисел с шаблоном
{ = ПОИСКПОЗ( «*» & номер & «*» ; ТЕКСТ( диапазон ; «0» ); 0 ) }
Для того, чтобы выполнить частичное совпадение (подстроки) против чисел, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ТЕКСТ.
Excel поддерживает символы подстановки «*» и «?». Тем не менее, если вы используете специальные символы с номером, вы будете преобразовывать числовое значение в текстовое значение. Другими словами, «*» & 99 & «*» = «* 99 *» (текстовая строка).
Если попытаться найти текстовое значение в диапазоне чисел, совпадение завершится неудачно.
Решение
Одно из решений заключается в преобразовании чисел в диапазоне поиска для текстовых значений, а затем сделать нормальный поиск с ПОИСКПОЗ, ВПР и т.д.
Другой вариант
Другой способ, чтобы преобразовать числа в текст, чтобы сцепить пустую строку. Эта формула работает так же, как выше формуле:
= ПОИСКПОЗ ( «*» & Е5 & «*» ; В5: В10 & «» ; 0 )
Частичное совпадение с ВПР
Если вы хотите получить информацию из таблицы на основе частичного совпадения, вы можете сделать это с помощью ВПР в режиме точного соответствия, и групповые символы.
В примере формула ВПР выглядит следующим образом:
=ВПР($H$2&»*»;$B$3:$E$12;2;0)
В этой формуле, значение представляет собой именованный диапазон, который относится к Н2, а также данные , представляет собой именованный диапазон , который относится к B3: E102. Без названных диапазонов, формула может быть записана следующим образом:
Положение первого частичного совпадения
= ПОИСКПОЗ ( «* текст *» ; диапазон; 0 )
Для того, чтобы получить позицию первого частичного совпадения (то есть ячейку, которая содержит текст, который вы ищете), вы можете использовать функцию ПОИСКПОЗ со специальными символами.
В примере формула в Е7:
=ПОИСКПОЗ(«*»&E6&»*»;B5:B10;0)
Функция ПОИСКПОЗ возвращает позицию или «индекс» в первом совпадении на основании значения поиска в диапазоне.
ПОИСКПОЗ поддерживает подстановочное согласование со звездочкой «*» (один или несколько символов) или знаком вопроса «?» (один символ), но только тогда, когда третий аргумент, тип_сопоставления, установлен в ЛОЖЬ или ноль.
Хитрости »
11 Июль 2016 126368 просмотров
ВПР с возвратом всех значений
Все, кто сталкивался с функцией ВПР знают, что она умеет возвращать исключительно одно значений — первое найденное. Но что делать, когда надо видеть все значения? К примеру имеется такая таблица:
И из этой таблицы необходимо получить фамилии(поле ФИО) всех сотрудников из отдела Сбыта:
Тут два варианта:
- Вариант 1: все значения необходимо получить в одной ячейке через разделитель(скажем запятую). Такое возможно только через использование VBA(на момент написания статьи). Такую функцию я написал давно: Как сцепить несколько значений в одну ячейку по критерию? СцепитьЕсли
- Вариант 2: каждое значение должно быть в отдельной ячейке. Этот вариант мы и рассмотрим более подробно в данной статье. Причем решать задачу будем без использования макросов — только встроенными функциями
. В результате получим что-то вроде: Александров Иван,Александров Петр,Андреев Алексей.
Здесь надо сразу оговориться — при помощи непосредственно ВПР(VLookup) это сделать ну никак не получится. Но это можно сделать при помощи её родственников — связки ИНДЕКС(ПОИСКПОЗ)(INDEX(MATCH)). Плюс еще пара функций. В сборе функция выглядит так:
=ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(ЕСЛИ($I$12=$C$12:$C$111;СТРОКА($C$12:$C$111)-11);СТРОКА(A1));1)
=INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1)
где:
- $A$12:$G$111 — таблица с ФИО и всеми данными
- $I$12 — ячейка с названием отдела
- $C$12:$C$111 — столбец с названиями отделов в таблице $A$12:$G$111
А теперь начнем разбирать формулу по кусочкам
Предлагаю сразу скачать пример файла с данными и формулами — тогда понять будет проще:
Tips_All_VlookupAllVals.xls (84,5 KiB, 23 006 скачиваний)
- Первое и самое главное — формула вводится в ячейку как формула массива. Это значит, что для приложенного к статье примера необходимо будет выделить ячейку J12, записать в неё формулу и завершить ввод нажатием сразу трех клавиш: Ctrl+Shift+Enter. После этого скопировать ячейку, выделить диапазон J13:J39 и вставить туда скопированную ячейку.
- За отбор ФИО указанного отдела отвечает этот кусок: ЕСЛИ($I$12=$C$12:$C$111;СТРОКА($C$12:$C$111)-11)
IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11)
Как видно здесь идет сравнение отдела, записанного в $I$12 со всеми отделами в таблице: $C$12:$C$111. Если отдел совпадает, то функция возвращает номер строки СТРОКА($C$12:$C$111). Но нам нужен не номер строки на листе, а номер строки внутри таблицы(потому что в формулу ИНДЕКС(INDEX) у нас передан диапазон $A$12:$G$111 и если передать в его второй аргумент(номер_строки) 14, то получим не Александров Иван, а Андреев Олег). Поэтому отнимаем от номера строки 11, чтобы было возвращено число 3(а не 14). Т.к. формула записана формулой массива — ЕСЛИ(IF) возвращает массив из номеров строк и логического ЛОЖЬ(FALSE)(если отдел не совпадает):
шаг 1: ЕСЛИ({ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};{12:13:14:15:16:17:18:19:20}-11)
шаг 2: ЕСЛИ({ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};{1:2:3:4:5:6:7:8:9})
шаг 3: {ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ} - Т.к. ЕСЛИ(IF) в данном случае возвращает массив значений, включая ненужные нам ЛОЖЬ(FALSE) — применяем НАИМЕНЬШИЙ(SMALL), которая будет брать только числа (сначала 3, затем 6 и т.д.), а логические значения ЛОЖЬ(FALSE) будет игнорировать:
НАИМЕНЬШИЙ({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};СТРОКА(A1))
SMALL({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};ROW(A1))
Функция НАИМЕНЬШИЙ(SMALL) отбирает из указанного массива чисел наименьшее. При этом можно отобрать по рангу — первое наименьшее, второе наименьшее, третье наименьшее и т.д.- с первым аргументом разобрались — это уже отобранные записи, где число — строка в таблице с нужной ФИО и ненужные нам логические ЛОЖЬ(FALSE).
- второй аргумент СТРОКА(A1) для каждой следующей строки будет меняться. В приложенном примере первая ячейка с формулой — J12. В ней СТРОКА(A1) равна 1, т.е. НАИМЕНЬШИЙ(SMALL) вернет первое наименьшее из массива чисел — 3. В ячейке J13 это уже будет СТРОКА(A2) и она равна 2, а значит НАИМЕНЬШИЙ(SMALL) вернет второе наименьшее из массива чисел — 6. И т.д. Когда все числа закончатся — НАИМЕНЬШИЙ(SMALL) вернет значение ошибки #ЧИСЛО!(#NUM!)
ячейка J12
шаг 1: НАИМЕНЬШИЙ({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};СТРОКА(A1))
шаг 2: НАИМЕНЬШИЙ({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};1)
шаг 3: НАИМЕНЬШИЙ(3)
ячейка J13
шаг 1: НАИМЕНЬШИЙ({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};СТРОКА(A2))
шаг 2: НАИМЕНЬШИЙ({ЛОЖЬ:ЛОЖЬ:3:ЛОЖЬ:ЛОЖЬ:6:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ};2)
шаг 3: НАИМЕНЬШИЙ(6)
- И последний штрих — все это передается в функцию ИНДЕКС(INDEX). Для ячейки J12 это будет значение ячейки, расположенной на пересечении 3-й строки и 1-го столбца диапазона $A$12:$G$111. На листе это ячейка A14. Т.е. третья сверху ячейка столбца А в диапазоне $A$12:$G$111 — Александров Иван.
ячейка J12
шаг 1: =ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(3);1)
шаг 2: =ИНДЕКС($A$12:$G$111;3;1)
шаг 3: Александров Иван
ячейка J13
шаг 1: =ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(6);1)
шаг 2: =ИНДЕКС($A$12:$G$111;6;1)
шаг 3: Александров Петр
И в довершение неплохо бы убрать ошибку в случае, если ни одно значение не соответствует критерию или значений больше, чем ячеек с формулами. Более подробно подобное решение я описывал в этой статье: Как в ячейке с формулой вместо ошибки показать 0
Для всех версий Excel:
=ЕСЛИ(ЕОШ(ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(ЕСЛИ($I$12=$C$12:$C$111;СТРОКА($C$12:$C$111)-11);СТРОКА(A1));1));»»;ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(ЕСЛИ($I$12=$C$12:$C$111;СТРОКА($C$12:$C$111)-11);СТРОКА(A1));1))
=IF(ISERR(INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1));»»;INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1))
Для Excel 2007 и выше:
=ЕСЛИОШИБКА(ИНДЕКС($A$12:$G$111;НАИМЕНЬШИЙ(ЕСЛИ($I$12=$C$12:$C$111;СТРОКА($C$12:$C$111)-11);СТРОКА(A1));1);»»)
=IFERROR(INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1);»»)
Плюс к этому в приложенном к статье файле я привел формулу, которая возвращает список всех сотрудников выбранного отдела без повторений и формулу с возможностью просто поменять заголовок в результирующем столбце(в файле это столбец K, ячейка K11) на любой из исходной таблицы и данные будут отображены из этого столбца.
Например, если вместо столбца ФИО записать в K11 Адрес — будут отображены все адреса сотрудников выбранного отдела. Если записать Телефон — все телефоны сотрудников выбранного отдела.
Скачать пример:
Tips_All_VlookupAllVals.xls (84,5 KiB, 23 006 скачиваний)
Так же см.:
Как найти значение в другой таблице или сила ВПР
ВПР с поиском по нескольким листам
ВПР_МН
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика