Excel функция работает только для одной ячейки

Содержание

  • Устранение проблем с вычислением
    • Способ 1: изменение формата ячеек
    • Способ 2: отключение режима «Показать формулы»
    • Способ 3: исправление ошибки в синтаксисе
    • Способ 4: включение пересчета формулы
    • Способ 5: ошибка в формуле
  • Вопросы и ответы

Не считаются формулы в Microsoft Excel

Одной из наиболее востребованных возможностей Excel является работа с формулами. Благодаря данной функции программа самостоятельно производит различного рода расчеты в таблицах. Но иногда случается так, что пользователь вписывает формулу в ячейку, но она не выполняет своего прямого назначения – вычисления результата. Давайте разберемся, с чем это может быть связано, и как решить данную проблему.

Устранение проблем с вычислением

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

Способ 1: изменение формата ячеек

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

  1. Для того, чтобы посмотреть, какой формат имеет конкретная ячейка или диапазон, переходим во вкладку «Главная». На ленте в блоке инструментов «Число» имеется поле отображения текущего формата. Если там указано значение «Текстовый», то формула точно вычисляться не будет.
  2. Просмотр формата ячейки в Microsoft Excel

  3. Для того, чтобы произвести смену формата достаточно кликнуть по данному полю. Откроется список выбора форматирования, где можно выбрать значение, соответствующее сути формулы.
  4. Изменение формата в Microsoft Excel

  5. Но выбор типов формата через ленту не такой обширный, как через специализированное окно. Поэтому лучше применить второй вариант форматирования. Выделяем целевой диапазон. Кликаем по нему правой кнопкой мыши. В контекстном меню выбираем пункт «Формат ячеек». Можно также после выделения диапазона нажать комбинацию клавиш Ctrl+1.
  6. Переход к форматированию ячейки в Microsoft Excel

  7. Открывается окно форматирования. Переходим во вкладку «Число». В блоке «Числовые форматы» выбираем тот формат, который нам нужен. Кроме того, в правой части окна имеется возможность выбрать тип представления конкретного формата. После того, как выбор произведен, кликаем по кнопке «OK», размещенной внизу.
  8. Форматирование ячейки в Microsoft Excel

  9. Выделите поочередно ячейки, в которых функция не считалась, и для пересчета нажмите функциональную клавишу F2.

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

Формкла считается в Microsoft Excel

Способ 2: отключение режима «Показать формулы»

Но возможно причина того, что вместо результатов расчета у вас отображаются выражения, состоит в том, что в программе включен режим «Показать формулы».

  1. Чтобы включить отображение итогов, переходим во вкладку «Формулы». На ленте в блоке инструментов «Зависимости формул», если кнопка «Показать формулы» активна, то кликаем по ней.
  2. Отключение показа формул в Microsoft Excel

  3. После этих действий в ячейках снова вместо синтаксиса функций начнет отображаться результат.

Отображение формул отключено в Microsoft Excel

Способ 3: исправление ошибки в синтаксисе

Формула также может отображаться как текст, если в её синтаксисе были допущены ошибки, например, пропущена или изменена буква. Если вы вводили её вручную, а не через Мастер функций, то такое вполне вероятно. Очень распространенной ошибкой, связанной с отображением выражения, как текста, является наличие пробела перед знаком «=».

Пробел перед знаком равно в Microsoft Excel

Lumpics.ru

В таких случаях нужно внимательно пересмотреть синтаксис тех формул, которые неправильно отображаются, и внести в них соответствующие коррективы.

Способ 4: включение пересчета формулы

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

  1. Перейдите во вкладку «Файл». Находясь в ней, следует кликнуть по пункту «Параметры».
  2. Переход в параметры в Microsoft Excel

  3. Откроется окно параметров. Нужно перейти в раздел «Формулы». В блоке настроек «Параметры вычислений», который расположен в самом верху окна, если в параметре «Вычисления в книге», переключатель не установлен в позицию «Автоматически», то это и есть причина того, что результат вычислений неактуальный. Переставляем переключатель в нужную позицию. После выполнения вышеуказанных настроек для их сохранения в нижней части окна жмем на кнопку «OK».

Установка автоматического пересчета формул в Microsoft Excel

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

Способ 5: ошибка в формуле

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

  • #ЧИСЛО!;
  • #ЗНАЧ!;
  • #ПУСТО!;
  • #ДЕЛ/0!;
  • #Н/Д.

В этом случае нужно проверить, правильно ли записаны данные в ячейках, на которые ссылается выражение, нет ли в них ошибок в синтаксисе или не заложено ли в самой формуле какое-либо некорректное действие (например, деление на 0).

Ошибка в формуле в Microsoft Excel

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

  1. Выделяем ячейку с ошибкой. Переходим во вкладку «Формулы». На ленте в блоке инструментов «Зависимости формул» кликаем по кнопке «Вычислить формулу».
  2. Переход к вычислению формулы в Microsoft Excel

  3. Открывается окно, в котором представляется полный расчет. Нажимаем на кнопку «Вычислить» и просматриваем вычисление пошагово. Ищем ошибку и устраняем её.

Вычисление формулы в Microsoft Excel

Как видим, причины того, что Эксель не считает или не правильно считает формулы, могут быть совершенно различными. Если вместо расчета у пользователя отображается сама функция, тот в этом случае, скорее всего, либо ячейка отформатирована под текст, либо включен режим просмотра выражений. Также, возможна ошибка в синтаксисе (например, наличие пробела перед знаком «=»). В случае если после изменения данных в связанных ячейках результат не обновляется, то тут нужно посмотреть, как настроено автообновление в параметрах книги. Также, нередко вместо корректного результата в ячейке отображается ошибка. Тут нужно просмотреть все значения, на которые ссылается функция. В случае обнаружения ошибки следует устранить её.

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

Здравствуйте, пожалуйста, помогите решить следующую задачу в *.xls  
На рабочей странице два соседних столбца (B1:С65535) с заголовками (B1:С1)  
Задача:  
Разрешить пользователю ввод любых данных в ячейки (B2:С65535)  
Обязательное условие:  
Пользователь не при каких обстоятельствах не может одновременно вводить  
данные в две соседние ячейки одной строки!  
Пример:  
Пользователь может вводить данные в ячейки (B2) или (C2).  
Пользователь не может вводить данные одновременно в ячейки (B2) и (C2).  

  Огромная благодарность создателям

www.planetaexcel.ru

и Гуру форума:  
pivas, IgorGO, EducatedFool извените, кого пропустил. Долго искал ответ  
на мой вопрос на сайте и форуме… К сожалению без результатно…  
Помогите, пожалуйста.  
С уважением,  
Дмитрий.

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Пользователь не может вводить данные одновременно в ячейки (B2) и (C2)…  
Дык, и так не может. Только по очереди.

Я сам — дурнее всякого примера! …

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

У меня встречный вопрос: а как Вы вводите одновременно в две ячейки?

 

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)  
   Dim r As Range  

         Set r = Range(«$b:$c»)  

     If Not (Intersect(r, Target) Is Nothing) Then  
      If Target.Count > 1 Then  
      Target.ClearContents  
      End If  
   End If  

  End Sub

 

Dophin

Пользователь

Сообщений: 2684
Регистрация: 01.01.1970

ввести легко, выделил нужные, ввел значение, нажал Ctrl+Enter. Ну либо скопировал диапазон  

  выше приведенный код по идее задачу решает.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=Dophin}{date=09.04.2010 07:09}{thema=}{post}ввести легко, выделил нужные, ввел значение, нажал Ctrl+Enter. {/post}{/quote}  
:-) Но ведь это ещё исхитриться нужно.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=Dophin}{date=09.04.2010 07:09}{thema=}{post}выше приведенный код по идее задачу решает.{/post}{/quote}  
Не решает.

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

{quote}{login=Dophin}{date=09.04.2010 07:09}{thema=}{post}ввести легко, выделил нужные, ввел значение, нажал Ctrl+Enter.{/post}{/quote}  
:-)А если нужно ввести разные значения?

Я сам — дурнее всякого примера! …

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=___}{date=09.04.2010 07:05}{thema=}{post}Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)  
   Dim r As Range  
   Set r = Range(«$b:$c»)  
   If Not (Intersect(r, Target) Is Nothing) Then  
      If Target.Count > 1 Then  
      Target.ClearContents  
      End If  
   End If  
End Sub{/post}{/quote}  
Событие SelectionChange наступает раньше, поэтому тут нужно использовать Worksheet_Change

 

Dophin

Пользователь

Сообщений: 2684
Регистрация: 01.01.1970

ааа) я на эту часть даже внимания не обратил)

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

Огромная благодарность всем за оперативные ответы!!! Да же не ожидал так быстро ответы получить. Извените, очевидно мой вопрос не совсем правильно был сформулирован мной, вернее одно слово из вопроса: «одновременно».  
Речь идёт о запрете одновременного ввода данных в две соседние ячейки одной строки, не в том плане, что нельзя выделить к примеру ячейки (B2) и (C2) и в один промежуток времени вводить в них данные (разные или одинаковые), а в том плане, что данные нельзя вводить в ячейки (B2) и (C2), а можно вводить только в ячейку (B2) или в ячейку (C2).  
Огромная просьба ко всем, пожалуйста, помогите найти простое, классическое изящное решение к примеру из встроенных функций, из логики или из другого меню, только, пожалуйста, без макросов. Задание вроде на первый взгляд очень простое и приметивное, но как его решить без макросов у меня уже мозг третий день кипит…  
Побывал на разных сайтах: programmersforum.ru, planetaexcel.ru, taurion.ru, it.kgsu.ru в поисках ответа на данный вопрос, и по этой причине задал свой вопрос на вашем форуме. Честное слово, больше нигде не задавал такой вопрос. Надеюсь на помощь Гуру. Сам обожаю и преклоняюсь перед excel!!! Пожалуй, мой самый любимый софт из всего софта!

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Тогда и формулировать нужно было иначе, например, «Запрет ввода одинаковых значений в соседние ячейки». А что Вы так боитесь макросов? Они же не видны, не кусаются. Посмотрите пример.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Меню Данные-Проверка-Тип_данных «Другой»-Формула:  
В С2 =B2=»», в В2 =C2=»»  
Сообщение об ошибке можно подредактировать.

 

Serge

Пользователь

Сообщений: 11308
Регистрация: 01.01.1970

{quote}{login=vikttur}{date=10.04.2010 01:58}{thema=}{post}Меню Данные-Проверка-Тип_данных «Другой»-Формула:  
В С2 =B2=»», в В2 =C2=»»{/post}{/quote}А копипаст? Здесь валидация не поможет :(

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Ну, «вводить» и «вставлять» — понятия разные. Автор спрашивал о первом. Да и испуганное «…только, пожалуйста, без макросов». Это как последний вариант, соломинка утопающему, ведь за плот (читай — макрос) автор не хочет цепляться :)

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

Вариант названия темы: «Запрет ввода одинаковых значений в соседние ячейки» тоже не годится для названия темы, так же, как и мой вариант: «Запрет одновременного ввода данных в ячейки каждой строки двух соседних столбцов». Оба варианта не раскрывают сути вопроса в полной мере… Долго ломал голову, как точнее сформулировать название темы. Пользователь не может не вводить, не копировать значения в соседние ячейки! При чём не важно одинаковые эти значения или нет. В двух своих постах мною чётко было обозначено данное обстоятельство:  

  Цитирую самого себя:  
Пример:  
Пользователь может вводить данные в ячейки (B2) или (C2).  
Пользователь не может вводить данные одновременно в ячейки (B2) и (C2).  

  Цитирую самого себя:  
Речь идёт о запрете одновременного ввода данных в две соседние ячейки одной строки, не в том плане, что нельзя выделить к примеру ячейки (B2) и (C2) и в один промежуток времени вводить в них данные (разные или одинаковые), а в том плане, что данные нельзя вводить в ячейки (B2) и (C2), а можно вводить только в ячейку (B2) или в ячейку (C2).

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

Юрий М, прикреплёный Вами файл post_116037.xls открываю в Excel 2003 (EN) клик по Enable Macros или Disable Macros даные в ячейки (B2) или (C2) вводятся свободно, так же, как и в ячейки (B2) и (C2), что в нашей задаче не допустимо.  
Необходимо обеспечить ввод данных любым способом в ячейки (B2) или (C2)!  
И не допустить при этом ввода данных любым способом в ячейки (B2) и (C2)!

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

В свете вновь открывшихся… попробуйте так (см. пример). По поводу разрешить/запретить макросы — с таким подходом и любой другой вариант решения можно обойти. Например, если это будут Данные — Проверка, то зайти в этот пункт меню, и удалить условие.

 

{quote}{login=vikttur}{date=10.04.2010 01:58}{thema=}{post}Меню Данные-Проверка-Тип_данных «Другой»-Формула:  
В С2 =B2=»», в В2 =C2=»»  
Сообщение об ошибке можно подредактировать.{/post}{/quote}  
совершенно верно, только форомула в обоих случаях такая:  
=ИЛИ($B2=»»;$C2=»»)

 

PavelKs

Пользователь

Сообщений: 350
Регистрация: 01.01.1970

dmdon, а может имеется в виду что если в В2 есть данные, то в С2 вводить нельзя, и наоборот если есть в С2 то в В2 — нельзя. Если да, то это наверное другая задача которую можно решить без vba условным форматированием.

 

Прошу прощения, это такой же вариант.    
+Невнимательно читал тему(((

 

PavelKs

Пользователь

Сообщений: 350
Регистрация: 01.01.1970

{quote}{login=DV}{date=10.04.2010 01:37}{thema=}{post}Прошу прощения, это такой же вариант.    
+Невнимательно читал тему((({/post}{/quote}  
Присоединяюсь к «Невнимательно читал тему»

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=PavelKs}{date=10.04.2010 01:31}{thema=}{post}dmdon, а может имеется в виду что если в В2 есть данные, то в С2 вводить нельзя, и наоборот если есть в С2 то в В2 — нельзя. Если да, то это наверное другая задача которую можно решить без vba условным форматированием.{/post}{/quote}  
Задачу Вы поняли правильно (это я надеюсь, так как сам так понял из последних объяснений), но условным форматированием Вы не сможете запретить ввод данных. Замаскировать — да.  
Вопрос к автору — мой последний файл задачу решает?

 

Serge

Пользователь

Сообщений: 11308
Регистрация: 01.01.1970

{quote}{login=The_Prist}{date=10.04.2010 01:45}{thema=}{post}Все остальные методы защиты можно обойти без проблем.{/post}{/quote}То есть фаталити? Ничего никак не запретишь?..

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Я знаю радикальный способ — удалить Excel :-)

 

Serge

Пользователь

Сообщений: 11308
Регистрация: 01.01.1970

{quote}{login=The_Prist}{date=10.04.2010 02:39}{thema=Re: Re: }{post}{quote}{login=Serge 007}{date=10.04.2010 02:01}{thema=Re: }{post}То есть фаталити? Ничего никак не запретишь?..{/post}{/quote}А как? Макросы не устраивают, а другими методами нельзя запретить полностью…{/post}{/quote}Так и макросы отключить можно…

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

{quote}{login=Юрий М}{date=10.04.2010 01:48}{thema=Re: }{post}{quote}{login=PavelKs}{date=10.04.2010 01:31}{thema=}{post}dmdon, а может имеется в виду что если в В2 есть данные, то в С2 вводить нельзя, и наоборот если есть в С2 то в В2 — нельзя. Если да, то это наверное другая задача которую можно решить без vba условным форматированием.{/post}{/quote}  
Задачу Вы поняли правильно (это я надеюсь, так как сам так понял из последних объяснений), но условным форматированием Вы не сможете запретить ввод данных. Замаскировать — да.  
Вопрос к автору — мой последний файл задачу решает?{/post}{/quote}  
Братья, всем спасибо за поддержку!!!  
Мою задачу на все 100% точно изложил PavelKs (очень сильно извеняюсь за то, что я сам не смог кратко и точно сформулировать свой вопрос).  
Условным форматированием действительно не получится запретить ввод данных для моей задачи.  
Юрий М, спасибо Вам, Ваш последний файл к сожалению не помог в решении задачи.  

  Пока благодаря поддержки форумчан вижу одно направление решения моего задания:  
1. Data—>Validation—>Закладка «Settings» Validation criteria Allow: «Custom»  
2. В поле Formula: нам необходимо ввести логическую формулу примерного вида:  
ЕСЛИ в строках диаппазона ячеек (В2:В65536) есть данные,  
тогда Excel запрещает ввод данных в ячейки (C2:C65536),  
при условии ЕСЛИ вводимые данные совпадают в строках диаппазона (В2:С65536).  
Могу (если нужно) приложить скриншот и файл для наглядности…

 

Useful

Пользователь

Сообщений: 334
Регистрация: 22.12.2012

Try this way

MyExcelWorld One World One Dream!
Microsoft MVP Excel from 2012
Aydin Aliyev

 

dmdon

Пользователь

Сообщений: 129
Регистрация: 01.01.1970

{quote}{login=dmdon}{date=10.04.2010 03:09}{thema=Re: Re: }{post}{quote}при условии ЕСЛИ вводимые данные совпадают в строках диаппазона (В2:С65536).{/post}{/quote} При чём абсолютно не важен тип ввода данных (копированием или с клавиатуры) и содержимое вводимых данных.

 

Serge

Пользователь

Сообщений: 11308
Регистрация: 01.01.1970

#30

10.04.2010 16:35:02

{quote}{login=Useful}{date=10.04.2010 03:22}{thema=}{post}Try this way{/post}{/quote}Excuse, but it not that decision which is required…  
Try to copy cell В1 and to insert into any cell with validation. At you it will turn out. And the absolute prohibition is necessary. Without any possibility to bring the data in the blocked cells.

<#0>

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

Решение 1: меняем формат ячеек

Очень часто Excel отказывается выполнять вычисления из-за неправильного формата ячеек.

Например, если задан текстовый формат, то вместо результата мы увидим только саму формулу в виде простого текста.

Формулы в ячейках Excel в текстовом формате

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

Формулы Excel в формате даты

Очевидно, что формат ячейки нужно изменить, и это делается следующим образом:

  1. Чтобы определить текущий формат ячейки (диапазон ячеек), выделите его и, находясь на вкладке «Главная», обратите внимание на группу инструментов «Число». Здесь есть специальное поле, которое показывает используемый сейчас формат.Формулы в ячейках Excel в текстовом формате
  2. Вы можете выбрать другой формат из списка, который откроется после нажатия стрелки вниз рядом с текущим значением.Выберите формат для выбранных ячеек в Excel

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

  1. После выбора ячейки (или выбора диапазона ячеек) щелкните ее правой кнопкой мыши и в открывшемся списке выберите команду «Форматировать ячейки». Или вместо этого после выделения нажмите Ctrl + 1.Перейти в окно форматирования ячеек через контекстное меню в Excel
  2. В открывшемся окне мы окажемся во вкладке «Номер». Здесь, в списке слева, находятся все доступные форматы, из которых мы можем выбирать. Слева отображаются настройки выбранной опции, которые мы можем изменить по своему усмотрению. Когда все будет готово, нажмите ОК.Выберите формат в окне форматирования ячейки в Excel
  3. Чтобы изменения отразились в таблице, по очереди включите режим редактирования для всех ячеек, в которых формула не сработала. После выбора желаемого элемента вы можете продолжить изменение, нажав клавишу F2, дважды щелкнув по нему или щелкнув внутри строки формул. Затем, ничего не меняя, нажмите Enter.Редактировать формулу в Excel

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

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

Решение 2: отключаем режим “Показать формулы”

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

  1. Перейдите на вкладку «Формулы». На панели инструментов «Зависимость формул» нажмите кнопку «Показать формулы», если она активна.Включение или отключение отображения формул в электронной таблице Excel
  2. В результате результаты расчета теперь будут отображаться в ячейках с формулами. Правда, из-за этого могут меняться границы столбцов, но это решаемо.Результаты в ячейках с формулами в Excel

Решение 3: активируем автоматический пересчет формул

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

  1. Зайдите в меню «Файл”.Перейдите в меню
  2. В списке слева выберите раздел «Параметры”.Перейти к параметрам Excel
  3. В появившемся окне перейдите в подраздел «Формулы». В правой части окна в группе «Параметры расчета» поставьте галочку напротив опции «автоматический», если выбран другой вариант. Когда все будет готово, нажмите ОК.Активировать автоматический расчет формул в Excel
  4. Все готово, с этого момента все результаты по формулам будут автоматически пересчитаны.

Решение 4: исправляем ошибки в формуле

Если вы ошиблись в формуле, программа может воспринять ее как простое текстовое значение, поэтому вычисления по ней производиться не будут. Например, одна из самых распространенных ошибок — это пробел перед знаком равенства. При этом помните, что знак «=» обязательно должен предшествовать любой формуле.

Перед формулой в Excel не нужно места

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

Вставить функцию в ячейку Excel

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

Редактировать формулу в Excel

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

Распространенные ошибки

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

  • # DIV / 0! — результат деления на ноль;
  • # N / A — введите недопустимые значения;
  • #КОЛИЧЕСТВО! — неверное числовое значение;
  • #ЦЕНИТЬ! — в функции использован неверный тип аргумента;
  • # ПУСТОЙ! — неверный адрес диапазона;
  • #СВЯЗЬ! — ячейка, к которой относится формула, удалена;
  • #ИМЯ? — Имя недопустимо в формуле.

Если мы видим любую из вышеперечисленных ошибок, в первую очередь проверяем, правильно ли заполнены все данные в ячейках, участвующих в формуле. Затем проверяем саму формулу и наличие в ней ошибок, в том числе противоречащих законам математики. Например, деление на ноль недопустимо (ошибка # DIV / 0!).

Деление на нулевую ошибку в Excel

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

  1. Мы отмечаем ячейку, содержащую ошибку. На вкладке «Формулы» в группе инструментов «Зависимости формул» нажмите кнопку «Вычислить формулу”.Функция вычисления формулы Excel
  2. В открывшемся окне отобразится подробная информация о расчете. Для этого нажмите кнопку «Рассчитать» (каждое нажатие переходит к следующему шагу).Окно расчета формул в Excel
  3. Таким образом, вы можете отслеживать каждый шаг, находить ошибку и исправлять ее.

Вы также можете использовать полезный инструмент проверки ошибок, расположенный в том же блоке.

Функция проверки ошибок формул Excel

Откроется окно, в котором будет описана причина ошибки и предложен ряд действий в этом отношении, включая исправление в строке формул.

Окно проверки ошибок Excel

Заключение

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

Skip to content

Как полностью или частично зафиксировать ячейку в формуле

При написании формулы Excel знак $ в ссылке на ячейку сбивает с толку многих пользователей. Но объяснение очень простое: это всего лишь способ ее зафиксировать. Знак доллара в данном случае служит только одной цели — он указывает, следует ли изменять ссылку при копировании. И это короткое руководство предоставляет полную информацию о том, какими способами можно закрепить адрес ячейки, чтобы он не менялся при копировании формулы.

Если вы создаете формулу только для одной клетки вашей таблицы Excel, то проблема как зафиксировать ячейку вас не волнует. А вот если её нужно копировать или перемещать по таблице, то здесь-то и скрываются подводные камни. Чтобы не сломать расчеты, некоторые ячейки следует зафиксировать в формулах, чтобы их адреса уже не менялись.

Как упоминалось ранее, относительные ссылки на ячейки являются основными по умолчанию для любой формулы, созданной в Excel. Но их главная особенность — изменение при копировании и перемещении. Во многих же случаях необходимо зафиксировать адрес ячейки в формуле, чтобы не потерять эту ссылку при изменении таблицы. Ниже мы рассмотрим следующие способы:

  • Как зафиксировать ячейку вручную.
  • Использование функциональной клавиши.
  • Выборочная фиксация по строке или столбцу.
  • Закрепите адрес ячейки при помощи имени.

Чтобы предотвратить изменение ссылок на ячейку, строку или столбец,  используют абсолютную адресацию , которая отличается тем, что перед координатой строки или столбца ставится знак доллара $.

Поясним на простом примере.

=A1*B1

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

=C3*D3

На 2 позиции изменилась буква столбца и на 2 единицы – номер строки.

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

=$A$1*B1

В результате, если мы повторим предыдущую операцию, то получим в результате формулу

=$A$1*D3

Ссылка на A1 теперь не относительная, а абсолютная. Более подробно об относительных и абсолютных ссылках вы можете прочитать в этой статье на нашем блоге.

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

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

Как вручную зафиксировать ячейку в формуле.

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

В ячейке D2 подсчитаем сумму скидки:

=B2*F2

Записывать подобный расчет для каждого товара — хлопотно и нерационально. Хочется скопировать его из C2 вниз по столбцу. Но при этом ссылка на F2 не должна измениться. Иначе наши расчеты окажутся неверными.

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

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

Далее при помощи курсора и клавиатуры вставляем в нужные места знак $ и нажимаем Enter. Получаем:

=B2*$F$2

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

Фиксируем ячейку при помощи функциональной клавиши.

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

Нажимаем функциональную клавишу F4 для переключения вида ссылки.

Неоднократно нажимая F4, вы будете переключать ссылки в следующем порядке:

Для того, чтобы зафиксировать ссылку на ячейку, достаточно нажать F4 всего один раз.

Думаю, это несколько удобнее, чем вводить знак доллара вручную.

Частичная фиксация ячейки по строке или по столбцу.

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

Вы можете использовать два вида смешанных ссылок:

  • Строка фиксируется, а столбец изменяется при копировании.
  • Столбец блокируется, а строка изменяется при копировании.

Смешанная ссылка содержит одну относительную и одну абсолютную координату, например $A1 или A$1. Проще говоря, знак доллара используется только единожды.

Получить такую ссылку вы можете любым из описанных выше способов. Либо вручную выбираете место и устанавливаете знак $, либо нажимаете F4 не один, а два или три раза. Вы это видите на рисунке чуть выше.

В результате мы имеем следующее:

В таблице ниже показано, как может быть закреплена ссылка на ячейку.

Зафиксированная ячейка Что происходит при копировании или перемещении Клавиши на клавиатуре
$A$1 Столбец и строка не меняются. Нажмите F4.
A$1 Строка не меняется. Дважды нажмите F4.
$A1 Столбец не изменяется. Трижды нажмите F4.

Рассмотрим пример, когда нужно закрепить только одну координату: либо столбец, либо строку. И все это в одной формуле.

Предположим, нужно рассчитать цены продажи при разных уровнях наценки. Для этого нужно умножить колонку с ценами (столбец В) на 3 возможных значения наценки (записаны в C2, D2 и E2). Вводим выражение для расчёта в C3, а затем копируем его сначала вправо по строке, а затем вниз:

=$B3*(1+C$2)

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

В первом множителе мы зафиксировали в координатах ячейки адрес столбца. Поэтому при копировании вправо по строке адрес $B3 не изменится: ведь строка по-прежнему третья, а буква столбца у нас зафиксирована и меняться не может.

А вот во втором множителе знак доллара мы поставили перед номером строки. Поэтому при копировании вправо координаты столбца изменятся и вместо C$2 мы получим D$2. В результате в D3 у нас получится выражение:

=$B3*(1+D$2)

А когда будем копировать вниз по столбцу, всё будет наоборот: $B3 изменится на $B4, $B5 и т.д. А вот D$2 не изменится, так как «заморожена» строка. В результате в С4 получим:

=$B4*(1+C$2)

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

И если ваши наценки вдруг изменятся, просто поменяйте числа в C2:E2, и проблема пересчёта будет решена почти мгновенно.

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

Как зафиксировать ячейку, дав ей имя.

Отдельную ячейку или целый диапазон ячеек в Excel также можно определить по имени. Для этого вы просто выбираете нужную ячейку, вводите желаемое имя в поле Имя и нажимаете клавишу Enter.

Вернёмся к нашему примеру со скидками. Давайте попробуем ячейке F2 присвоить собственное имя, чтобы затем использовать его в расчетах.

Установите курсор в F2, а затем присвойте этому адресу имя, как это показано на рисунке выше. При этом можно использовать только буквы, цифры и нижнее подчёркивание, которым можно заменить пробел. Знаки препинания и служебные символы не допускаются. Не будем  мудрствовать и назовём его «скидка».

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

Таким образом, ячейку F2 мы ранее фиксировали при помощи абсолютной ссылки и знака $ —

=B2*$F$2

а теперь то же самое делаем при помощи её имени «скидка»:

=B2*скидка

Ячейка так же надёжно зафиксирована, а формула же при этом становится более понятной и читаемой.

Эксель понимает, что если в формуле встречается имя «скидка», то вместо него нужно использовать содержимое ячейки F2.

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

Как удалить сразу несколько гиперссылок В этой короткой статье я покажу вам, как можно быстро удалить сразу все нежелательные гиперссылки с рабочего листа Excel и предотвратить их появление в будущем. Решение работает во всех версиях Excel,…
Как использовать функцию ГИПЕРССЫЛКА В статье объясняются основы функции ГИПЕРССЫЛКА в Excel и приводятся несколько советов и примеров формул для ее наиболее эффективного использования. Существует множество способов создать гиперссылку в Excel. Чтобы сделать ссылку на…
Гиперссылка в Excel: как сделать, изменить, удалить В статье разъясняется, как сделать гиперссылку в Excel, используя 3 разных метода. Вы узнаете, как вставлять, изменять и удалять гиперссылки на рабочих листах, а также исправлять неработающие ссылки. Гиперссылки широко используются…
Как использовать функцию ДВССЫЛ – примеры формул В этой статье объясняется синтаксис функции ДВССЫЛ, основные способы ее использования и приводится ряд примеров формул, демонстрирующих использование ДВССЫЛ в Excel. В Microsoft Excel существует множество функций, некоторые из которых…
Как сделать диаграмму Ганта Думаю, каждый пользователь Excel знает, что такое диаграмма и как ее создать. Однако один вид графиков остается достаточно сложным для многих — это диаграмма Ганта.  В этом кратком руководстве я постараюсь показать…
Как сделать автозаполнение в Excel В этой статье рассматривается функция автозаполнения Excel. Вы узнаете, как заполнять ряды чисел, дат и других данных, создавать и использовать настраиваемые списки в Excel. Эта статья также позволяет вам убедиться, что вы…
Быстрое удаление пустых столбцов в Excel В этом руководстве вы узнаете, как можно легко удалить пустые столбцы в Excel с помощью макроса, формулы и даже простым нажатием кнопки. Как бы банально это ни звучало, удаление пустых…

Содержание

  1. Что возвращает функция
  2. Формула ЕСЛИ в Excel – примеры нескольких условий
  3. Синтаксис функции ЕСЛИ
  4. Расширение функционала с помощью операторов «И» и «ИЛИ»
  5. Простейший пример применения.
  6. Применение «ЕСЛИ» с несколькими условиями
  7. Операторы сравнения чисел и строк
  8. Одновременное выполнение двух условий
  9. Общее определение и задачи
  10. Как правильно записать?
  11.  
  12. Дополнительная информация
  13. Вложенные условия с математическими выражениями.
  14. Аргументы функции
  15. А если один из параметров не заполнен?
  16. Функция ЕПУСТО
  17. Функции ИСТИНА и ЛОЖЬ
  18. Составное условие
  19. Простое условие
  20. Пример функции с несколькими условиями
  21. Пример использования «ЕСЛИ»
  22. Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
  23. Заключение

Что возвращает функция

Заданное вами значение при выполнении двух условий ИСТИНА или ЛОЖЬ.

Довольно часто количество возможных условий не 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. Знак доллара делает фиксированной часть адреса, перед которой он установлен, при копировании формулы. Здесь установлен запрет на изменение номера строки в адресе ячейки.

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

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

  1. Для примера возьмем все ту же таблицу с выплатами премии к 8 марта. Но на этот раз, согласно условиям, размер премии зависит от категории работника. Женщины, имеющие статус основного персонала, получают бонус по 1000 рублей, а вспомогательный персонал получает только 500 рублей. Естественно, что мужчинам этот вид выплат вообще не положен независимо от категории.
  2. Первым условием является то, что если сотрудник — мужчина, то величина получаемой премии равна нулю. Если же данное значение ложно, и сотрудник не мужчина (т.е. женщина), то начинается проверка второго условия. Если женщина относится к основному персоналу, в ячейку будет выводиться значение «1000», а в обратном случае – «500». В виде формулы это будет выглядеть следующим образом: «=ЕСЛИ(B6="муж.";"0"; ЕСЛИ(C6="Основной персонал"; "1000";"500"))».
  3. Вставляем это выражение в самую верхнюю ячейку столбца «Премия к 8 марта».
  4. Как и в прошлый раз, «протягиваем» формулу вниз.

Пример использования «ЕСЛИ»

Теперь давайте рассмотрим конкретные примеры, где используется формула с оператором «ЕСЛИ».

  1. Имеем таблицу заработной платы. Всем женщинам положена премия к 8 марту в 1000 рублей. В таблице есть колонка, где указан пол сотрудников. Таким образом, нам нужно вычислить женщин из предоставленного списка и в соответствующих строках колонки «Премия к 8 марта» вписать по «1000». В то же время, если пол не будет соответствовать женскому, значение таких строк должно соответствовать «0». Функция примет такой вид: «ЕСЛИ(B6="жен."; "1000"; "0")». То есть когда результатом проверки будет «истина» (если окажется, что строку данных занимает женщина с параметром «жен.»), то выполнится первое условие — «1000», а если «ложь» (любое другое значение, кроме «жен.»), то соответственно, последнее — «0».
  2. Вписываем это выражение в самую верхнюю ячейку, где должен выводиться результат. Перед выражением ставим знак «=».
  3. После этого нажимаем на клавишу Enter. Теперь, чтобы данная формула появилась и в нижних ячейках, просто наводим указатель в правый нижний угол заполненной ячейки, жмем на левую кнопку мышки и, не отпуская, проводим курсором до самого низа таблицы.
  4. Так мы получили таблицу со столбцом, заполненным при помощи функции «ЕСЛИ».

Проверяем простое числовое условие с помощью функции 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 функция процента от числа
  • Excel функция просмотр на английском
  • Excel функция просмотр массива
  • Excel функция прописные буквы