Объединение двух формул в excel

Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.

=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)

Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.

Заявления ЕСЛИ являются исключительно надежными и являются основой для многих моделей электронных таблиц, но они также являются основной причиной многих проблем с электронными таблицами. В идеале утверждение ЕСЛИ должно применяться к минимальным условиям, таким как «Мужчина/женщина», «Да/Нет/Возможно», но иногда может потребоваться оценить более сложные сценарии, для которых требуется вложенное* более 3 функций ЕСЛИ.

* «Вложенность» означает объединение нескольких функций в одной формуле.

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

ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])

Имя аргумента

лог_выражение

Условие, которое нужно проверить.

значение_если_истина

Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.

значение_если_ложь

Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.

Примечания

Excel позволяет использовать до 64 вложенных функций ЕСЛИ, но это вовсе не означает, что так и надо делать. Почему?

Нужно очень крепко подумать, чтобы выстроить последовательность из множества операторов ЕСЛИ и обеспечить их правильную отработку по каждому условию на протяжении всей цепочки. Если при вложении вы допустите в формуле малейшую неточность, она может сработать в 75 % случаев, но вернуть непредвиденные результаты в остальных 25 %. К сожалению, шансов отыскать эти 25 % немного.

Работа с множественными операторами ЕСЛИ может оказаться чрезвычайно трудоемкой, особенно если вы вернетесь к ним через какое-то время и попробуете разобраться, что пытались сделать вы или, и того хуже, кто-то другой.

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

Давайте посмотрим, как правильно создавать операторы с несколькими вложенными функциями ЕСЛИ и как понять, когда пора переходить к другим средствам из арсенала Excel.

Примеры

Ниже приведен пример довольно типичного вложенного оператора ЕСЛИ, предназначенного для преобразования тестовых баллов учащихся в их буквенный эквивалент.

Этот сложный оператор с вложенными функциями ЕСЛИ следует простой логике:

Если тестовых баллов (в ячейке D2) больше 89, учащийся получает оценку A.

Если тестовых баллов больше 79, учащийся получает оценку B.

Если тестовых баллов больше 69, учащийся получает оценку C.

Если тестовых баллов больше 59, учащийся получает оценку D.

В противном случае учащийся получает оценку F.

Этот частный пример относительно безопасен, поскольку взаимосвязь между тестовыми баллами и буквенными оценками вряд ли будет меняться, так что дополнительных изменений не потребуется. Но что если вам потребуется разделить оценки на A+, A и A– (и т. д.)? Теперь ваши четыре условных оператора ЕСЛИ нужно переписать с учетом 12 условий! Вот так будет выглядеть ваша формула:

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

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

Дополнительные примеры

Ниже приведен распространенный пример расчета комиссионных за продажу в зависимости от уровней дохода.

Эта формула означает: ЕСЛИ(ячейка C9 больше 15 000, то вернуть 20 %, ЕСЛИ(ячейка C9 больше 12 500, то вернуть 17,5 % и т. д.

Хотя она выглядит примерно так же, как в примере с более ранними оценками, эта формула является отличным примером того, насколько сложно использовать крупные выписки ЕСЛИ. Что делать, если ваша организация решила добавить новые уровни компенсаций и, возможно, даже изменить существующие значения в рублях или процентах? У вас будет много работы на руках!

Совет: Чтобы сложные формулы было проще читать, вы можете вставить разрывы строк в строке формул. Просто нажмите клавиши ALT+ВВОД перед текстом, который хотите перенести на другую строку.

Перед вами пример сценария для расчета комиссионных с неправильной логикой:

Видите, что не так? Сравните порядок сравнения доходов с предыдущим примером. Как это будет происходить? Правильно, она будет снизу вверх (от 5 000 до 15 000 рублей), а не наоборот. Но почему это так важно? Это очень важно, так как формула не может пройти первую оценку для любого значения стоимостью более 5 000 рублей. Предположим, что вы получили доход в размере 12 500 долларов США— если вы получили 10 %, так как она больше 5 000 рублей, и она остановится на этом. Это может быть чрезвычайно проблемным, так как во многих ситуациях такие типы ошибок остаются незамеченными до тех пор, пока они не оказывают отрицательного влияния. Так что же можно сделать, зная о том, что при сложных вложенных заявлениях ЕСЛИ существуют серьезные недостатки? В большинстве случаев вместо создания сложной формулы с помощью функции ЕСЛИ можно использовать функцию ВЛОП. С помощью ВLOOKUPсначала нужно создать таблицу для справки:

В этой формуле предлагается найти значение ячейки C2 в диапазоне C5:C17. Если значение найдено, возвращается соответствующее значение из той же строки в столбце D.

Эта формула ищет значение ячейки B9 в диапазоне B2:B22. Если значение найдено, возвращается соответствующее значение из той же строки в столбце C.

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

В этой области в этой области вложена более подробная информация,но это намного проще, чем 12-уровневая сложная вложенная если-выписка! Есть и другие, менее очевидные, преимущества:

Таблицы ссылок функции ВПР открыты и их легко увидеть.

Значения в таблицах просто обновлять, и вам не потребуется трогать формулу, если условия изменятся.

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

Вы знали?

Теперь есть функция УСЛОВИЯ, которая может заменить несколько вложенных операторов ЕСЛИ. Так, в нашем первом примере оценок с 4 вложенными функциями ЕСЛИ:

можно сделать все гораздо проще с помощью одной функции ЕСЛИМН:

Функция ЕСЛИМН — просто находка! Благодаря ей вам больше не нужно переживать обо всех этих операторах ЕСЛИ и скобках.

Примечание: Эта функция доступна только при наличии подписки на Microsoft 365.. Если вы являетесь подписчиком Microsoft 365, убедитесь, что у вас установлена последняя версия Office.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Excel.Как написать две формулы в одну ячейку?

Помогите написать две формулы в одну ячейку. не как не разберусь ( есть количество четных (G1-G6) и нечетных (H1=H6) чисел, нужна формула которая покажет их количество в одной ячейке (как в ящейках K1-K6 их там я сам пока написал чтоб показать Вам)

* убрать все пробелы
Интервал между числами можно регулировать числом «9»
.

Как вставить две формулы в одну ячейку в excel

Как в Excel сделать несколько формул в одной ячейке?

Как в Excel вставить две формулы в одной ячейке?

Объединение текста из двух или нескольких ячеек в одну

  1. Выделите ячейку, в которую вы хотите вставить объединенные данные.
  2. Введите = (знак равенства) и выберите первую ячейку, которую нужно объединить.
  3. Введите символ & и пробел, заключенный в кавычки.
  4. Выберите следующую ячейку, которую нужно объединить, и нажмите клавишу ВВОД. Пример формулы: =A2&» «&B2.

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

Нужно использовать знаки &, пример: =СУММ(A1:A10)&»;»&СУММ(B2:B10) в одной ячейке будет 2 разные суммы через точку с запятой. По этой логике можно вставлять в ячейку не только 2 формулы но и текст и сколько угодно формул.

Как работает функция Если в Эксель?

Функция ЕСЛИ — одна из самых популярных функций в Excel. Она позволяет выполнять логические сравнения значений и ожидаемых результатов. Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.

Как создавать условия в Excel?

Как задать условие в Excel

=A1=B1 – Данное условие вернет ИСТИНА, если значения в ячейках A1 и B1 равны, или ЛОЖЬ в противном случае. Задавая такое условие, можно сравнивать текстовые строки без учета регистра.

Как вставить несколько строк в одну ячейку?

Кликните по ячейке, в которую нужно ввести несколько строк текста. Введите первую строку. Нажмите сочетание Alt+Enter, чтобы создать ещё одну строку в ячейке. Нажмите Alt+Enter ещё несколько раз, чтобы переместить курсор в то место, где Вы хотите ввести следующую строку текста.

Как сцепить диапазон ячеек Excel?

Для этого запишем формулу =СЦЕПИТЬ(A6:A9) , указав в качестве единственного аргумента весь диапазон сразу, а не отдельные ячейки. В результате получим лишь значение первой ячейки. Теперь в Строке формул выделим формулу =СЦЕПИТЬ(A6:A9) и нажмем клавишу F9 .

Как работает функция или?

Функция ИЛИ возвращает значение ИСТИНА, если в результате вычисления хотя бы одного из ее аргументов получается значение ИСТИНА, и значение ЛОЖЬ, если в результате вычисления всех ее аргументов получается значение ЛОЖЬ.

Как сделать формулу в гугл таблице?

Как вставить формулу

  1. Откройте файл в Google Документах.
  2. Нажмите на место, куда нужно вставить формулу.
  3. Нажмите Вставка Формула.
  4. Выберите нужные символы из следующих меню: Буквы греческого алфавита Математические символы Знаки отношений Математические операции Стрелки
  5. Введите в поле числа или подстановочные переменные.

Как работает функция Суммесли?

Функция СУММЕСЛИ — это одна из математических и тригонометрических функций. Суммирует все числа в выбранном диапазоне ячеек в соответствии с заданным условием и возвращает результат. диапазон — выбранный диапазон ячеек, к которому применяется условие.

Как записывается логическая функция Если в Excel?

Чтобы решить поставленную задачу, воспользуемся логической функцией ЕСЛИ. Формула будет выглядеть так: =ЕСЛИ(C2>=8;B2/2;B2). Логическое выражение «С2>=8» построено с помощью операторов отношения «>» и «=». Результат его вычисления – логическая величина «ИСТИНА» или «ЛОЖЬ».

Что если в Excel?

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

Где находится функция в Excel?

В группе команд Редактирование на вкладке Главная найдите и нажмите стрелку рядом с командой Автосумма, а затем выберите нужную функцию в раскрывающемся меню. В нашем случае мы выберем Сумма. Выбранная функция появится в ячейке.

Как в Excel вставить две формулы в одной ячейке?

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

Нужно использовать знаки &, пример: =СУММ(A1:A10)&»;»&СУММ(B2:B10) в одной ячейке будет 2 разные суммы через точку с запятой. По этой логике можно вставлять в ячейку не только 2 формулы но и текст и сколько угодно формул.

Как вставить несколько строк в одну ячейку?

Кликните по ячейке, в которую нужно ввести несколько строк текста. Введите первую строку. Нажмите сочетание Alt+Enter, чтобы создать ещё одну строку в ячейке. Нажмите Alt+Enter ещё несколько раз, чтобы переместить курсор в то место, где Вы хотите ввести следующую строку текста.

Как сцепить диапазон ячеек Excel?

Для этого запишем формулу =СЦЕПИТЬ(A6:A9) , указав в качестве единственного аргумента весь диапазон сразу, а не отдельные ячейки. В результате получим лишь значение первой ячейки. Теперь в Строке формул выделим формулу =СЦЕПИТЬ(A6:A9) и нажмем клавишу F9 .

Как пользоваться функцией если в Excel?

Функция ЕСЛИ, одна из логических функций, служит для возвращения разных значений в зависимости от того, соблюдается ли условие. Например: =ЕСЛИ(A2>B2;»Превышение бюджета»;»ОК») =ЕСЛИ(A2=B2;B4-A4;»»)

Как сделать формулу в гугл таблице?

Как вставить формулу

  1. Откройте файл в Google Документах.
  2. Нажмите на место, куда нужно вставить формулу.
  3. Нажмите Вставка Формула.
  4. Выберите нужные символы из следующих меню: Буквы греческого алфавита Математические символы Знаки отношений Математические операции Стрелки
  5. Введите в поле числа или подстановочные переменные.

Как сцепить ячейки в Excel?

В случае, когда необходимо в одну ячейку объединить данные хранящиеся в разных ячейках, например, нужно «сцепить» ячейки хранящие отдельно Фамилию, Имя и Отчество, можно воспользоваться одним из вариантов сцепки: либо функцией Excel =Сцепить(), либо оператором «&».

Как связать значения ячеек Excel?

Создание связей между рабочими книгами

  1. Открываем обе рабочие книги в Excel.
  2. В исходной книге выбираем ячейку, которую необходимо связать, и копируем ее (сочетание клавиш Ctrl+С)
  3. Переходим в конечную книгу, щелкаем правой кнопкой мыши по ячейке, куда мы хотим поместить связь.

Как вставить текст в несколько ячеек Excel?

Как добавить одинаковый текст в несколько ячеек Excel?

  1. Выделите все ячейки, в которые вы хотите вставить текст.
  2. После выделения сразу введите текст.
  3. Когда это сделано вместо Enter, нажмите Ctrl+Enter.

Как большой текст поместить в одну ячейку Excel?

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

Как вставить список в одну ячейку Excel?

Создание раскрывающегося списка в Excel

  1. Выберите ячейки, в которой должен отображаться список.
  2. На ленте на вкладке «Данные» щелкните «Проверка данных».
  3. На вкладке «Параметры» в поле «Тип данных» выберите пункт «Список».
  4. Щелкните в поле «Источник» и введите текст или числа (разделенные запятыми), которые должны появиться в списке.

Как в Excel скопировать и вставить несколько строк?

Выполните одно из указанных ниже действий.

  1. Чтобы переместить строки или столбцы, на вкладке Главная в группе Буфер обмена нажмите кнопку Вырезать . Сочетание клавиш: CTRL+X.
  2. Чтобы скопировать строки или столбцы, на вкладке Главная в группе Буфер обмена нажмите кнопку Копировать . Сочетание клавиш: CTRL+C.

Какой разделитель в Excel используется для указания диапазона ячеек?

Функция =СЦЕПИТЬДИАПАЗОН(ДИАПАЗОН, [РАЗДЕЛИТЕЛЬ]) имеет два аргумента: — ДИАПАЗОН — диапазон ячеек, которые необходимо сцепить. — [РАЗДЕЛИТЕЛЬ] — символ-разделитель, который будет вставляться между значениями ячеек.

Как объединить вертикальные ячейки в Excel?

Для объединения ячеек используется инструмент «Выравнивание» на главной странице программы. Выделяем ячейки, которые нужно объединить. Нажимаем «Объединить и поместить в центре». Точно таким же образом можно объединить несколько вертикальных ячеек (столбец данных).

-19 / 0 / 0

Регистрация: 25.03.2016

Сообщений: 51

1

Объединение двух формул в одну ячейку

12.11.2016, 08:49. Показов 82987. Ответов 5


Студворк — интернет-сервис помощи студентам

Здравствуйте!!! На этот раз я бы хотел спросить о том что, возможно ли так сказать соединить 2 формулы в одну ячейку? Имеются 2 формулы 1-я

Код

=СУММЕСЛИ(A23:A11418;"30X60";AG23:AG11418)

и 2-я

Код

=СЧЁТЕСЛИ(AG24:AG1002;"<0")

они находятся в разных ячейках..Хотелось бы что бы эти 2 функции работали в одной ячейке



0



15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

12.11.2016, 10:11

2

cfour4ik, как именно соединить? Если сложить результат, то так и пишите

Код

=СУММЕСЛИ(A23:A11418;"30X60";AG23:AG11418)+СЧЁТЕСЛИ(AG24:AG1002;"<0")



1



-19 / 0 / 0

Регистрация: 25.03.2016

Сообщений: 51

12.11.2016, 11:02

 [ТС]

3

Цитата
Сообщение от Казанский
Посмотреть сообщение

как именно соединить

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



0



15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

12.11.2016, 11:37

4

cfour4ik, непонятно. Может, Вы хотите соединить условия суммирования, например «если в ст. А значение 30X60 И в каком-то другом столбце значение <0«? Для этого есть функция СУММЕСЛИМН.
Приложите пример.



1



772 / 615 / 294

Регистрация: 05.01.2014

Сообщений: 1,338

12.11.2016, 11:42

5

Лучший ответ Сообщение было отмечено cfour4ik как решение

Решение

Может так? А лучше приложите файл пример, что есть, и что хотите получить, это не форум экстрасенсов угадывающих правильные ответы.

Код

=СУММЕСЛИ(A23:A11418;"30X60";AG23:AG11418)&";"&СЧЁТЕСЛИ(AG24:AG1002;"<0")



1



-19 / 0 / 0

Регистрация: 25.03.2016

Сообщений: 51

13.11.2016, 19:44

 [ТС]

6

Цитата
Сообщение от AleksSid
Посмотреть сообщение

=СУММЕСЛИ(A23:A11418;»30X60″;AG23:AG11418)&»;»&СЧЁ ТЕСЛИ(AG24:AG1002;»<0″)

Вот что мне было нужно спасибо большое)



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

13.11.2016, 19:44

Помогаю со студенческими работами здесь

Перенос данных столбца в одну ячейку
Добрый день! Имеется столбец с числовыми данными. Каким образом или с помощью какой функции можно…

Группировать числа из столбца в одну ячейку
Помогите, пожалуйста, решить проблему.
В строке A номера &quot;линий&quot;, в виде 1,1,1,1, … 2,2,2,2, ……

Выставить размер страницы в одну ячейку
Господа очень требуется помощь профессионалов.
Пользуюсь Excel 2007
Ситуция следующая:…

Запись формулы со значениями в одну ячейку
Пример: http://smotr.im/G5N

Можно ли как-то из значений таблицы (A1:C8) записать в одну ячейку…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

6

Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.

  • =ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)

Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.

Заявления ЕСЛИ являются исключительно надежными и являются основой для многих моделей электронных таблиц, но они также являются основной причиной многих проблем с электронными таблицами. В идеале утверждение ЕСЛИ должно применяться к минимальным условиям, таким как «Мужчина/женщина», «Да/Нет/Возможно», но иногда может потребоваться оценить более сложные сценарии, для которых требуется вложенное* более 3 функций ЕСЛИ.

* «Вложенность» означает объединение нескольких функций в одной формуле.

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

Синтаксис

ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])

Например:

  • =ЕСЛИ(A2>B2;»Превышение бюджета»;»ОК»)

  • =ЕСЛИ(A2=B2;B4-A4;»»)

Имя аргумента

Описание

лог_выражение   

(обязательный)

Условие, которое нужно проверить.

значение_если_истина   

(обязательный)

Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.

значение_если_ложь   

(необязательный)

Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.

Примечания

Excel позволяет использовать до 64 вложенных функций ЕСЛИ, но это вовсе не означает, что так и надо делать. Почему?

  • Нужно очень крепко подумать, чтобы выстроить последовательность из множества операторов ЕСЛИ и обеспечить их правильную отработку по каждому условию на протяжении всей цепочки. Если при вложении вы допустите в формуле малейшую неточность, она может сработать в 75 % случаев, но вернуть непредвиденные результаты в остальных 25 %. К сожалению, шансов отыскать эти 25 % немного.

  • Работа с множественными операторами ЕСЛИ может оказаться чрезвычайно трудоемкой, особенно если вы вернетесь к ним через какое-то время и попробуете разобраться, что пытались сделать вы или, и того хуже, кто-то другой.

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

Давайте посмотрим, как правильно создавать операторы с несколькими вложенными функциями ЕСЛИ и как понять, когда пора переходить к другим средствам из арсенала Excel.

Примеры

Ниже приведен пример довольно типичного вложенного оператора ЕСЛИ, предназначенного для преобразования тестовых баллов учащихся в их буквенный эквивалент.

Сложный оператор ЕСЛИ с вложением — ячейка E2 содержит формулу =ЕСЛИ(B2>97;"A+";ЕСЛИ(B2>93;"A";ЕСЛИ(B2>89;"A-";ЕСЛИ(B2>87;"B+";ЕСЛИ(B2>83;"B";ЕСЛИ(B2>79;"B-";ЕСЛИ(B2>77;"C+";ЕСЛИ(B2>73;"C";ЕСЛИ(B2>69;"C-";ЕСЛИ(B2>57;"D+";ЕСЛИ(B2>53;"D";ЕСЛИ(B2>49;"D-";"F"))))))))))))

  • =ЕСЛИ(D2>89;»A»;ЕСЛИ(D2>79;»B»;ЕСЛИ(D2>69;»C»;ЕСЛИ(D2>59;»D»;»F»))))

    Этот сложный оператор с вложенными функциями ЕСЛИ следует простой логике:

  1. Если тестовых баллов (в ячейке D2) больше 89, учащийся получает оценку A.

  2. Если тестовых баллов больше 79, учащийся получает оценку B.

  3. Если тестовых баллов больше 69, учащийся получает оценку C.

  4. Если тестовых баллов больше 59, учащийся получает оценку D.

  5. В противном случае учащийся получает оценку F.

Этот частный пример относительно безопасен, поскольку взаимосвязь между тестовыми баллами и буквенными оценками вряд ли будет меняться, так что дополнительных изменений не потребуется. Но что если вам потребуется разделить оценки на A+, A и A– (и т. д.)? Теперь ваши четыре условных оператора ЕСЛИ нужно переписать с учетом 12 условий! Вот так будет выглядеть ваша формула:

  • =ЕСЛИ(B2>97;»A+»;ЕСЛИ(B2>93;»A»;ЕСЛИ(B2>89;»A-«;ЕСЛИ(B2>87;»B+»;ЕСЛИ(B2>83;»B»;ЕСЛИ(B2>79;»B-«; ЕСЛИ(B2>77;»C+»;ЕСЛИ(B2>73;»C»;ЕСЛИ(B2>69;»C-«;ЕСЛИ(B2>57;»D+»;ЕСЛИ(B2>53;»D»;ЕСЛИ(B2>49;»D-«;»F»))))))))))))

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

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

Дополнительные примеры

Ниже приведен распространенный пример расчета комиссионных за продажу в зависимости от уровней дохода.

Ячейка D9 содержит формулу ЕСЛИ(C9>15000;20%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>5000;10%;0)))))

  • =ЕСЛИ(C9>15000;20%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>5000;10%;0)))))

Эта формула означает: ЕСЛИ(ячейка C9 больше 15 000, то вернуть 20 %, ЕСЛИ(ячейка C9 больше 12 500, то вернуть 17,5 % и т. д…

Хотя она выглядит примерно так же, как в примере с более ранними оценками, эта формула является отличным примером того, насколько сложно использовать крупные выписки ЕСЛИ. Что делать, если ваша организация решила добавить новые уровни компенсаций и, возможно, даже изменить существующие значения в рублях или процентах? У вас будет много работы на руках!

Совет: Чтобы сложные формулы было проще читать, вы можете вставить разрывы строк в строке формул. Просто нажмите клавиши ALT+ВВОД перед текстом, который хотите перенести на другую строку.

Перед вами пример сценария для расчета комиссионных с неправильной логикой:

Ячейка D9 содержит неправильную формулу: =ЕСЛИ(C9>5000;10%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>15000;20%;0)))))

Видите, что не так? Сравните порядок сравнения доходов с предыдущим примером. Как это будет происходить? Правильно, она будет снизу вверх (от 5 000 до 15 000 рублей), а не наоборот. Но почему это так важно? Это очень важно, так как формула не может пройти первую оценку для любого значения стоимостью более 5 000 рублей. Предположим, что вы получили доход в размере 12 500 долларов США— если вы получили 10 %, так как она больше 5 000 рублей, и она остановится на этом. Это может быть чрезвычайно проблемным, так как во многих ситуациях такие типы ошибок остаются незамеченными до тех пор, пока они не оказывают отрицательного влияния. Так что же можно сделать, зная о том, что при сложных вложенных заявлениях ЕСЛИ существуют серьезные недостатки? В большинстве случаев вместо создания сложной формулы с помощью функции ЕСЛИ можно использовать функцию ВЛОП. С помощью ВLOOKUPсначала нужно создать таблицу для справки:

Ячейка D2 содержит формулу =ВПР(C2;C5:D17;2;ИСТИНА)

  • =ВПР(C2;C5:D17;2;ИСТИНА)

В этой формуле предлагается найти значение ячейки C2 в диапазоне C5:C17. Если значение найдено, возвращается соответствующее значение из той же строки в столбце D.

Ячейка C9 содержит формулу =ВПР(B9;B2:C6;2;ИСТИНА)

  • =ВПР(B9;B2:C6;2;ИСТИНА)

Эта формула ищет значение ячейки B9 в диапазоне B2:B22. Если значение найдено, возвращается соответствующее значение из той же строки в столбце C.

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

В этой области в этой области вложена более подробная информация,но это намного проще, чем 12-уровневая сложная вложенная если-выписка! Есть и другие, менее очевидные, преимущества:

  • Таблицы ссылок функции ВПР открыты и их легко увидеть.

  • Значения в таблицах просто обновлять, и вам не потребуется трогать формулу, если условия изменятся.

  • Если вы не хотите, чтобы люди видели вашу таблицу ссылок или вмешивались в нее, просто поместите ее на другой лист.

Вы знали?

Теперь есть функция УСЛОВИЯ, которая может заменить несколько вложенных операторов ЕСЛИ. Так, в нашем первом примере оценок с 4 вложенными функциями ЕСЛИ:

  • =ЕСЛИ(D2>89;»A»;ЕСЛИ(D2>79;»B»;ЕСЛИ(D2>69;»C»;ЕСЛИ(D2>59;»D»;»F»))))

можно сделать все гораздо проще с помощью одной функции ЕСЛИМН:

  • =ЕСЛИМН(D2>89;»A»;D2>79;»B»;D2>69;»C»;D2>59;»D»;ИСТИНА;»F»)

Функция ЕСЛИМН — просто находка! Благодаря ей вам больше не нужно переживать обо всех этих операторах ЕСЛИ и скобках.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Статьи по теме

Видео: расширенные функции ЕСЛИ

Функция ЕСЛИМН (Microsoft 365, Excel 2016 и более поздних)

Функция СЧЁТЕ ЕСЛИ подсчитывирует значения на основе одного условия

Функция СЧЁТЕIFS подсчитывирует значения на основе нескольких критериев

Функция СУММЕ ЕСЛИ суммирует значения на основе одного условия

Функция СУММЕСС суммирует значения на основе нескольких критериев.

Функция И

Функция ИЛИ

Функция ВЛ.В.В ФУНКЦИИ

Общие сведения о формулах в Excel

Как избежать ошибок в формулах

Обнаружение ошибок в формулах

Логические функции

Excel (по алфавиту)

Excel (по категориям)

Объединение формул из нескольких ячеек в одну

Russel

Дата: Понедельник, 10.03.2014, 10:35 |
Сообщение № 1

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

Добрый день!

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

Кросс


QIWI 9173973973

Сообщение отредактировал RusselПонедельник, 10.03.2014, 10:37

 

Ответить

Serge_007

Дата: Понедельник, 10.03.2014, 12:14 |
Сообщение № 2

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

Нет


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

Russel

Дата: Вторник, 11.03.2014, 08:26 |
Сообщение № 3

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

Serge_007, VBA не позволяет просматривать содержимое формул или это очень гемор сложный путь?


QIWI 9173973973

 

Ответить

Serge_007

Дата: Вторник, 11.03.2014, 20:18 |
Сообщение № 4

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

Russel, да, достаточно сложный

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

Вобщем, какой смысл заморачиваться, если на VBA можно сразу получить результат, не используя функции листа Excel?


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

Russel

Дата: Среда, 12.03.2014, 08:28 |
Сообщение № 5

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

Serge_007, мало чего понимаю в алгоритмах и в VBA, спасибо Вам за ликбез!
На всякий случай, если все-таки будет «спортивный» интерес, на соседнем форуме писал алгоритм:
Как на мой взгляд должен работать макрос:
1. Выделяем ячейки, участвующие в получении результата (в приложенном примере диапазон B7:B10);
2. Макрос пробегает по всем формулам и ищет ячейку, на которую не ссылается ни одна другая (В10) Макрос спрашивает, в какой из выделенных ячеек содержится окончательный результат (в приложенном примере В10);
3. Макрос просматривает формулу в найденной указанной ячейке, и подменяет ссылки на ячейки из первоначального диапазона их содержимым (естественно, без «=»);
4. п.3 повторяется несколько раз (число ячеек в первоначальном диапазоне);
5. Получившуюся в результате формулу макрос записывает в какую-нибудь ячейку, например В11.

ИМХО, синтаксис формул и функций не важен, так как в текстовой строке формулы нужно искать конкретные ссылки В7, В8, В9.


QIWI 9173973973

 

Ответить

Serge_007

Дата: Среда, 12.03.2014, 21:19 |
Сообщение № 6

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

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

Теоретически это возможно. Только какой в этом смысл?


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

Russel

Дата: Четверг, 13.03.2014, 08:08 |
Сообщение № 7

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

Теоретически это возможно.

Отлично, будем читать литературу :D

Только какой в этом смысл?

Про смысл я писал в первом сообщении. Мне удобно большие формулы разбивать на куски-этапы вычислений, которые я потом объединяю в общую формулу, вот и хотелось как-то автоматизировать этот процесс.
Спасибо за консультацию!


QIWI 9173973973

 

Ответить

Serge_007

Дата: Четверг, 13.03.2014, 21:03 |
Сообщение № 8

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

большие формулы разбивать на куски-этапы вычислений, которые я потом объединяю в общую формулу

какой смысл заморачиваться, если на VBA можно сразу получить результат, не используя функции листа Excel?

Вы не ответили на вопрос ;)


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

ShAM

Дата: Пятница, 14.03.2014, 04:33 |
Сообщение № 9

Группа: Друзья

Ранг: Старожил

Сообщений: 1347


Репутация:

249

±

Замечаний:
0% ±


Excel 2010

Сергей, так вычисления же на листе, а не на VBA. Я тоже так часто делаю, разбиваю вычисление на этапы, как в файле у Russel-а.
Чудо-кнопка была бы очень кстати :)

 

Ответить

Russel

Дата: Пятница, 14.03.2014, 08:42 |
Сообщение № 10

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010


QIWI 9173973973

 

Ответить

Serge_007

Дата: Пятница, 14.03.2014, 20:55 |
Сообщение № 11

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

вычисления же на листе, а не на VBA

Что мешает их перенести с листа в оперативку? ;)

Чудо-кнопка была бы очень кстати

Алишер, ты VBA лучше меня знаешь, написать нужный код сможешь и сам :) Понятно…


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

AlexM

Дата: Пятница, 14.03.2014, 23:23 |
Сообщение № 12

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4257


Репутация:

1046

±

Замечаний:
0% ±


Excel 2003

Проверил только на задаче из первого сообщения
Код[vba]

Код

Sub Formula()
Dim i As Long, iFormula As String
Set rg = Selection
For i = rg.Count To 1 Step -1
        With rg.Item(i)
            iFormula = IIf(i = rg.Count, .Formula, Replace(iFormula, .Address(0, 0), Mid(.Formula, 2)))
        End With
Next i
rg.Item(rg.Count + 1).Formula = iFormula
End Sub

[/vba]



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.

Сообщение отредактировал AlexMСуббота, 15.03.2014, 13:27

 

Ответить

AlexM

Дата: Суббота, 15.03.2014, 20:14 |
Сообщение № 13

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4257


Репутация:

1046

±

Замечаний:
0% ±


Excel 2003

Изменил код. Теперь формулу можно объединить с константами
[vba]

Код

Sub Formula()
Dim i As Long, iFormula As String
Set rg = Selection
For i = rg.Count To 1 Step -1
     iFormula = IIf(i = rg.Count, rg.Item(i).Formula, Replace(iFormula, rg.Item(i).Address(0, 0), _
         IIf(Left(rg.Item(i).Formula, 1) = «=», Mid(rg.Item(i).Formula, 2), _
         IIf(IsNumeric(rg.Item(i)), rg.Item(i), «»»» & rg.Item(i) & «»»»))))
Next i
rg.Item(rg.Count + 1).Formula = iFormula
End Sub

[/vba]



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.

 

Ответить

Russel

Дата: Понедельник, 17.03.2014, 08:52 |
Сообщение № 14

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

AlexM, это божественно! respect
Буду тестировать, но сейчас все просто отлично hands


QIWI 9173973973

 

Ответить

В этой статье описан метод объединения нескольких промежуточных формул для создания одной длинной формулы (мегаформулы). Если вы уже поработали в Excel определенное время, то могли видеть длинные формулы, которые были практически непонятны. Здесь вы узнаете, как они были созданы.

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

Рис. 125.1. Удаление средних имен и инициалов требует указания шести промежуточных формул или одной мегаформулы

Рис. 125.1. Удаление средних имен и инициалов требует указания шести промежуточных формул или одной мегаформулы

Формулы, введенные в строке 2, приведены в таблице ниже.

Ячейка Промежуточная формула Действие
B2 =СЖПРОБЕЛЫ(A2) Удаляет избыточные пробелы
C2 =НАЙТИ(" ";A2;1) Находит первый пробел
D2 =НАЙТИ(" ";B2;C2+1) Находит второй пробел, если он есть
E2 =ЕСЛИОШИБКА(D2;C2) Использует первый пробел, если нет второго
F2 =ЛЕВСИМВ(B2;C2) Извлекает имя
G2 =ПРАВСИМВ(B2;ДЛСТР(B2)-E2) Извлекает фамилию
H2 =F2&G2 Объединяет имя и фамилию

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

=ЛЕВСИМВ(СЖПРОБЕЛЫ(A2);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1))&ПРАВСИМВ(СЖПРОБЕЛЫ(A2);ДЛСТР(СЖПРОБЕЛЫ(A2))-ЕСЛИОШИБКА(НАЙТИ(" ";СЖПРОБЕЛЫ(A2);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1)+1);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1)))

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

Если вам все еще не ясен описанный процесс, выполните его пошагово.

  1. Проверьте формулу в Н2. Она содержит две ссылки на ячейки (F2 и 62): =F2&G2
  2. Активизируйте ячейку G2 и скопируйте содержимое формулы (без знака равенства) в буфер обмена.
  3. Выберите ячейку Н2 и замените ссылку на ячейку G2 содержимым из буфера обмена. Теперь ячейка Н2 содержит следующую формулу:
    =F2&ПРАВСИМВ(B2; ДЛСТР(B2)-E2)
  4. Активизируйте ячейку F2 и скопируйте содержимое формулы (без знака равенства) в буфер обмена.
  5. Выберите ячейку Н2 и замените ссылку на ячейку F2 содержимым из буфера обмена. Теперь формула в ячейке Н2 следующая:
    =ЛЕВСИМВ(B2;C2)&ПРАВСИМВ(B2;ДЛСТР(B2)-E2)
  6. Ячейка Н2 на данный момент содержит ссылки на три ячейки (В2, С2 и Е2). Формулы в них заменяют каждую из ссылок на эти ячейки.
  7. Замените ссылку на ячейку Е2 формулой в Е2. В результате получаем:
    =ЛЕВСИМВ(B2;C2)&ПРАВСИМВ(B2;ДЛСТР(B2)-ЕСЛИОШИБКА(D2;C2))
  8. Скопируйте формулу из D2 и замените ссылки на ячейку D2.
  9. =ЛЕВСИМВ(B2;C2)&ПРАВСИМВ(B2;ДЛСТР(B2)-ПРАВСИМВ(НАЙТИ(" ";B2;B2+1);C2))
    В формуле есть три ссылки на ячейку С2.

  10. Замените каждую из этих ссылок формулой, содержащейся в ячейке С2. Формула в ячейке Н2:
    =ЛЕВСИМВ(B2;НАЙТИ(" ";B2;1))&ПРАВСИМВ(B2;ДЛСТР(B2)-ЕСЛИОШИБКА(НАЙТИ(" ";B2;НАЙТИ(" ";B2;1);НАЙТИ(" ";B2;1)))
  11. И, наконец, замените семь ссылок на ячейку В2 формулой в ячейке В2. В результате получаем:
    =ЛЕВСИМВ(СЖПРОБЕЛЫ(A2);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1))&ПРАВСИМВ(СЖПРОБЕЛЫ(A2);ДЛСТР(СЖПРОБЕЛЫ(A2))-ЕСЛИОШИБКА(НАЙТИ(" ";СЖПРОБЕЛЫ(A2);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1)+1);НАЙТИ(" ";СЖПРОБЕЛЫ(A2);1)))

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

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

Понравилась статья? Поделить с друзьями:
  • Объединение двух условий в excel
  • Объединение двух таблиц в одну word
  • Объединение двух таблиц excel по одному столбцу
  • Объединение двух таблиц excel по ключевому столбцу
  • Объединение двух столбцов с данными в excel