Меню

Excel как найти ячейки сумма которых равна заданному числу

Подбор слагаемых для нужной суммы

Не очень частый, но и не экзотический случай. На моих тренингах такой вопрос задавали не один и не два раза 🙂 Суть в том, что мы имеем конечный набор каких-то чисел, из которых надо выбрать те, что дадут в сумме заданное значение.

В реальной жизни эта задача может выглядеть по-разному.

  • Например, мы выгрузили из интернет-банка все платежи, которые поступили на наш счет за последний месяц. Один из клиентов разбивает сумму своего платежа на несколько отдельных счетов и платит частями. Мы знаем общую сумму оплаты и количество счетов, но не знаем их сумм. Надо подобрать те суммы в истории платежей, которые дадут в общем заданное значение.
  • У нас есть несколько рулонов стали (линолеума, бумаги. ), из которых надо подобрать под заказ те, что дадут заданную длину.
  • Блэкджек или в народе «очко». Надо набрать карты суммарной стоимостью максимально близкой к 21 баллу, но не превысить этот порог.

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

Давайте рассмотрим несколько способов решения такой задачи в Excel.

Способ 1. Надстройка Поиск решения (Solver)

Эта надстройка входит в стандартный набор пакета Microsoft Office вместе с Excel и предназначена, в общем случае, для решения линейных и нелинейных задач оптимизации при наличии списка ограничений. Чтобы ее подключить, необходимо:

  • в Excel 2007 и новее зайти Файл — Параметры Excel — Надстройки — Перейти (File — Excel Options — Add-ins — Go)
  • в Excel 2003 и старше — открыть меню Сервис — Надстройки (Tools — Add-ins)

и установить соответствующий флажок. Тогда на вкладке или в меню Данные (Data) появится нужная нам команда.

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

  • Диапазон A1:A20 содержит наши числа, из которых мы будем выбирать нужные, чтобы «вписаться» в заданную сумму.
  • Диапазон В1:B20 будет своего рода набором переключателей, т.е. будет содержать нули или единички, показывая, отбираем мы данное число в выборку или нет.
  • В ячейке E2 стоит обычная автосумма всех единичек по столбцу B, подсчитывающая кол-во выбранных чисел.
  • В ячейке E3 с помощью функции СУММПРОИЗВ (SUMPRODUCT) считается сумма попарных произведений ячеек из столбцов А и B (то есть A1*B1+A2*B2+A3*B3+. ). Фактически, здесь подсчитывается сумма чисел из столбца А, отобранных единичками из столбца В.
  • В розовую ячейку E4 пользователь вводит желаемую сумму для подбора.
  • В ячейке E5 вычисляется абсолютное по модулю значение погрешности подбора с целью ее будущей минимизации.
  • Все желтых ячейках Е8:E17 хотелось бы получить список отобранных чисел, т.е. тех чисел из столбца А, напротив которых в столбце В есть единички. Для этого необходимо выделить сразу все (!) желтые ячейки и в них ввести вот такую формулу массива:

После ввода формулы ее необходимо ввести не как обычную формулу, а как формулу массива, т.е. нажать не Enter, а Ctrl+Shift+Enter. Похожая формула используется в примере о ВПР, выдающей сразу все найденные значения (а не только первое).

Теперь перейдем на вкладку (или в меню) Данные и запустим инструмент Поиск решения (Data — Solver):

В открывшемся окне необходимо:

  • Задать как целевую функцию (Target Cell) — ячейку вычисления погрешности подбора E5. Чуть ниже выбрать опцию — Минимум, т.к. мы хотим подобрать числа под заданную сумму с минимальной (а лучше даже нулевой) погрешностью.
  • В качестве изменяемых ячеек переменных (Changing cells) задать диапазон столбца переключателей B1:B20.
  • С помощью кнопки Добавить (Add) создать дополнительное условие на то, что ячейки диапазона B1:B20 должны быть бинарными (т.е. содержать только 0 или 1):



С помощью той же кнопки, при необходимости, создать ограничение на количество чисел в выборке. Например, если мы знаем, что сумма была разбита на 5 счетов, то:

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

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

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

Найденные комбинации можно сохранять виде сценариев (кнопка Сохранить сценарий), чтобы вернуться к нем позднее с помощью команды Данные — Анализ «что-если» — Диспетчер сценариев (Data — What-If Analysis — Scenario Manager):

И весьма удобно будет вывести все найденные решения, сохраненные в виде сценариев, в одной сравнительной таблице с помощью кнопки Отчет (Summary):

Способ 2. Макрос подбора

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

Для использования макроса нажмите сочетание Alt+F11, в открывшемся окне редактора Visual Basic вставьте новый модуль через меню Insert — Module и скопируйте туда этот код:

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

Источник статьи: http://www.planetaexcel.ru/techniques/11/179/

excel подбор слагаемых для нужной суммы

Хороший инструмент — это надстройка Поиск решения в MS Excel!

Например, его можно использовать в ситуации, когда вам нужно найти вариант, из которого с разных чисел могла быть добавлена ​​определенная сумма (возможно, вы ищете, с каких счетов могла быть сформирована сумма платежа). Допустим, вам нужно найти сумму 10 из заданных чисел:

Для начала включаем надстройку или проверяем, что она включена (в Excel 2013): Файл/Параметры, раздел Надстройки, выберите Управление: Надстройки Excel, нажмите кнопку Перейти. Установите флажок Поиск решения, нажмите кнопку ОК

Найдите решение, которое появилось на ленте на вкладке «Данные»:

Теперь нам нужно понять, как мы можем использовать параметры в разных строках для «выбора» суммы. Я сделал вариант, когда мы указываем множитель 0 или 1 в одном столбце, подсчитываем произведение в соседнем столбце, а затем добавляем значения к итогу:

  • в ячейках столбца B указываем 0 или 1 (теперь неважно, что именно)
  • в ячейке C4 формула = A4 * B4
  • в ячейках C5: C14 — то же с учетом номера строки
  • в ячейке C3 формула = СУММ (C4: C14)

Теперь приступим к поиску решения. И заполните:

  • Оптимизация целевой функции: $ C $ 3
  • Раньше: Значения: 10
  • Изменение ячеек переменных: $ B $ 4: $ B $ 14
  • В соответствии с ограничениями: — добавьте (кнопка Добавить) три условия: 1) значения переменных должны быть целыми числами, 2) значения должны быть> = 0, 3) 2) значения должны быть быть

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

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

  • Например, мы загрузили из интернет-банка все платежи, поступившие на наш счет за последний месяц. Один из клиентов разделяет сумму платежа на несколько отдельных счетов и производит оплату в рассрочку. Мы знаем общую сумму к оплате и количество счетов, но не знаем сумму. В истории платежей необходимо выбрать те суммы, которые, как правило, дают заданное значение.
  • У нас есть несколько рулонов стали (линолеум, бумага.), Из которых мы должны выбрать те, которые придадут заказу заданную длину.
  • Блэкджек или обычно «пойнт». Необходимо собрать карты с общей стоимостью как можно ближе к 21 баллу, но не превышать этот порог.

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

Давайте рассмотрим разные способы решения такой задачи в Excel.

Способ 1. Надстройка Поиск решения (Solver)

Эта надстройка входит в стандартный набор Microsoft Office вместе с Excel и предназначена, как правило, для решения линейных и нелинейных задач оптимизации со списком ограничений. Для его подключения необходимо:

  • в Excel 2007 и более поздних версиях выберите Файл — Параметры Excel — Надстройки — Перейти
  • в Excel 2003 и более ранних версиях: откройте меню Инструменты — Надстройки

и поставьте галочку в соответствующем поле. Тогда нужная нам команда появится во вкладке или меню «Данные.

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

  • Диапазон A1: A20 содержит наши числа, из которых мы выберем те, которые нам нужны, чтобы «уместить» заданное количество.
  • Диапазон B1: B20 будет своего рода набором переключателей, то есть он будет содержать ноль или один, указывая, выбираем ли мы данное число в образце или нет.
  • Ячейка E2 содержит обычную автоматическую сумму всех единиц в столбце B, в которой подсчитывается количество выбранных чисел.
  • В ячейке E3 функция СУММПРОИЗВ вычисляет сумму произведений пары ячеек из столбцов A и B (то есть A1 * B1 + A2 * B2 + A3 * B3 +.). Фактически, он вычисляет сумму чисел в столбце A, выбранных из чисел в столбце B.
  • В розовой ячейке E4 пользователь вводит желаемую сумму для вывода.
  • В ячейке E5 вычисляется абсолютное значение ошибки выбора, чтобы минимизировать ее в будущем.
  • Все желтые ячейки E8: E17 хотели бы получить список выбранных чисел, т.е тех чисел из столбца A, перед которыми стоят числа из столбца B. Для этого нужно выделить сразу все (!) Желтые ячейки и вставьте в них следующую формулу массива:

После ввода формулы ее нужно вводить не как обычную формулу, а как формулу массива, т.е нажимать не Enter, а Ctrl + Shift + Enter. Аналогичная формула используется в примере ВПР, который возвращает все найденные значения сразу (а не только первое).

Теперь перейдите на вкладку Data (или меню) и запустите инструмент Data — Solver):

В открывшемся окне вам необходимо:

  • Установить как целевую функцию (Целевая ячейка) — ячейка для расчета ошибки выбора E5. Чуть ниже выбираем вариант — Минимум, потому что мы хотим подбирать числа на заданную сумму с минимальной (или даже нулевой) ошибкой.
  • Установите диапазон столбцов переключателя B1: B20 как Edit Cells.
  • Используя кнопку Добавить, создайте дополнительное условие, что ячейки диапазона B1: B20 должны быть двоичными (т.е содержать только 0 или 1):


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

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

Теперь вы можете оставить найденное решение выбора (Сохранить найденное решение) или вернуться к предыдущим значениям (Восстановить исходные значения).

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

Найденные комбинации можно сохранить как сценарии (кнопка Сохранить сценарий), чтобы вы могли вернуться к ним позже, используя команду Данные — Анализ моделирования — Менеджер сценариев):

И все найденные решения, сохраненные в виде скрипта, будет очень удобно просматривать в единой сравнительной таблице с помощью кнопки Сводка):

Способ 2. Макрос подбора

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

Чтобы использовать макрос, нажмите комбинацию Alt + F11, в открывшемся окне редактора Visual Basic вставьте новый модуль через меню Insert — Module и скопируйте туда этот код:

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

в Excel 2007 и более поздних версиях выберите Файл — Параметры Excel — Надстройки — Перейти
в Excel 2003 и более ранних версиях: откройте меню Инструменты — Надстройки

и поставьте галочку в соответствующем поле. После этого необходимая команда появится на вкладке или в меню «Данные».

Источник статьи: http://excel-home.ru/articles/excel-podbor-slagaemyh-dlya-nuzhnoy-summy/

Суммирование ячеек в Excel по условию

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

Простое сложение в Excel

Складывать значения ячеек можно с помощью простой функции «СУММ», которая суммирует выбранные значения без определенного условия. Она используется, когда есть ячейки, массив или несколько массивов для сложения. В этом случае достаточно выделить нужные элементы электронной таблицы и применить функцию. Она играет роль обычного калькулятора со знаком «+».

Суммирование ячеек по условию

Excel также предусматривает суммирование с учетом условия. Функция применяется, когда необходимо просуммировать только те значения, которые соответствуют заданному условию. Для нее возможно задать три аргумента:

  • Диапазон – обязательный аргумент, представляющий собой массив, в котором происходит проверка заданного условия;
  • Критерий – еще один обязательный аргумент, которое является условием для отбора значений в ячейках. При равенстве определенному числу, необходимо ввести его без кавычек, в других случаях необходимы кавычки: например, если значение больше числа 5, то его нужно прописать, как «>5» . Также работают текстовые значения: если нужно суммировать выручку продавца Иванова в таблице, то прописывается условие «Иванов» ;
  • Диапазон суммирования – массив значений, которые нужно сложить.

Для удобной работы с вычислительными операциями в таблицах Excel есть две функции, которые суммируют ячейки, если задать условия: «СУММЕСЛИ» и «СУММЕСЛИМН». Рассмотрим каждую из них более подробно.

Функция «СУММЕСЛИ»

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

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

В выделенной ячейке отобразится результат сложения, а в верхней строке – функция. Вычислить значение можно без вызова окна «Аргументы функции», если прописать все вручную. При этом базовая запись должна выглядеть так: =СУММЕСЛИ(X; «Условие»; Y) , где X – это диапазон, а Y – диапазон суммирования. Значения не обязательно вписывать, их достаточно выделить с помощью мышки в таблице. Все элементы функции разделены знаком «;».

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

Функция «СУММЕСЛИМН»

«СУММЕСЛИМН» позволяет рассчитать результат суммирования с использованием нескольких условий. Функция предоставляет больше возможностей для задания параметров математического вычисления. Для расчета можно использовать сразу несколько критериев суммирования, причем условий может быть задано до 127. На примере данной таблицы рассмотрим, как найти, сколько килограмм яблок купил Евдокимов, ведь он приобретал также и бананы.

Чтобы суммировать ячейки с несколькими условиями, действуйте согласно следующей инструкции:

  1. Выделите пустую ячейку, в которой будет отображаться конечный результат, затем нажмите на кнопку fx, которая находится рядом со строкой функций.
  2. В разделе «Математические» в окне «Вставка функций» нажмите «СУММЕСЛИМН», затем подтвердите выбор, нажав на кнопку «ОК».

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

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

Источник статьи: http://spravkapc.ru/programmy/excel-sumif.html

Excel как найти ячейки сумма которых равна заданному числу

Как найти в Excel все комбинации, равные заданной сумме?

Например, у меня есть следующий список чисел, и теперь я хочу знать, какая комбинация чисел в списке дает в сумме 480, на следующем скриншоте вы можете увидеть, что есть пять групп возможных комбинаций, которые в сумме равны до 480, например, 300 + 60 + 120, 300 + 60 + 40 + 80 и т. д. В этой статье я расскажу о некоторых методах определения суммирования ячеек до определенного значения в Excel.

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

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

1. Выберите список номеров и определите для этого списка имя диапазона — Range1 в Имя Box, и нажмите Enter ключ для завершения определения имени диапазона, см. снимок экрана:

2. После определения имени диапазона для списка номеров вам необходимо создать еще два имени диапазона в Менеджер имен коробка, пожалуйста, нажмите Формулы > Менеджер имен, В Менеджер имен диалоговое окно, нажмите Новинки кнопку см. скриншоты:

3. В выскочившем Новое имя диалоговое окно введите имя List1 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

4. Нажмите OK вернуться к Менеджер имен диалоговое окно, затем продолжайте щелкать Новинки кнопку, чтобы создать другое имя диапазона, в Новое имя диалоговое окно введите имя List2 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & 2 ^ СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

5. После создания имен диапазонов примените следующую формулу массива к ячейке B2:

=IF(ISNUMBER(MATCH(ROWS($1:1),IF(INDEX(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),MATCH(TRUE,MMULT(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),Range1)=$C$2,0),),TRANSPOSE(List1)),0)),»X»,»») , и нажмите Shift + Ctrl + Enter вместе, затем перетащите дескриптор заполнения вниз в ячейку B8, последнее число в списке, и вы увидите, что числа, общая сумма которых составляет 480, помечены как X в столбце B, см. снимок экрана:

  • Ноты:
  • В приведенной выше длинной формуле:List1, List2 и Range1 имена диапазонов, которые вы создали на предыдущих этапах, C2 — это конкретное значение, к которому вы хотите добавить числа.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

Быстрый и простой поиск и перечисление всех комбинаций, равных заданной сумме, в Excel

Kutools for Excel‘s Составить номер Утилита может помочь вам быстро и легко найти и перечислить все комбинации и конкретные комбинации, которые равны заданной сумме. Нажмите, чтобы загрузить Kutools for Excel!

Kutools for Excel: с более чем

Найдите комбинацию ячеек, которая равна заданной сумме, с помощью надстройки Solver

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

1. Во-первых, вам нужно активировать это решающее устройство добавить в, перейдите к Файл > Опции, В Параметры Excel диалоговое окно, нажмите Надстройки на левой панели, а затем щелкните Надстройка Solver из Неактивные надстройки приложений раздел, см. снимок экрана:

2. Затем нажмите Go для входа в Надстройки диалог, проверьте Надстройка Solver и нажмите OK для успешной установки этой надстройки.

3. После активации надстройки Solver вам необходимо ввести эту формулу в ячейку B9: = СУММПРОИЗВ (B2: B9; A2: A9) (B2: B9 — это пустые ячейки столбца рядом со списком номеров, и A2: A9 это список номеров, который вы используете. ) и нажмите Enter ключ, см. снимок экрана:

4. Затем нажмите Данные > решающее устройство , чтобы перейти к Параметр решателя диалоговое окно, в диалоговом окне выполните следующие операции:

(1.) Щелкните кнопка для выбора ячейки B10 где ваша формула из Установить цель раздел;

(2.) Тогда в к раздел, выберите Значение, и введите целевое значение 480 как вам нужно;

(3.) Под Изменяя ячейки переменных раздел, нажмите кнопка для выбора диапазона ячеек B2: B9 где будут отмечены ваши соответствующие числа.

5. Затем нажмите Добавить кнопку, чтобы перейти к Добавить ограничение диалоговое окно, нажмите кнопка для выбора диапазона ячеек B2: B9И выберите бункер из выпадающего списка см. снимок экрана:

6. Нажмите OK вернуться в Параметр решателя диалоговое окно, затем щелкните Решить кнопку, через несколько минут Результаты решателя появится диалоговое окно, и вы увидите, что комбинация ячеек, равная заданной сумме 480, помечена как 1. В поле Результаты решателя диалог, пожалуйста, выберите Сохранить решение для решения и нажмите OK для выхода из диалога. Смотрите скриншот:

Внимание: Этот метод также позволяет получить только одну комбинацию ячеек, если существует более одной комбинации значений, сумма которой равна определенному значению.

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

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

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

1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.

Код VBA: найти комбинацию ячеек, равную заданной сумме:

3. Затем сохраните и закройте это окно кода, а затем вернитесь на рабочий лист и введите эту формулу = getcombination (A2: A9, C2) в пустую ячейку и нажмите Enter key, вы получите следующий результат, который отображает комбинационные числа, равные заданной сумме, см. снимок экрана:

  • Ноты:
  • В приведенной выше формуле A2: A9 — диапазон номеров, аC2 содержит целевое значение, которому вы хотите равняться.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

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

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

Советы: Чтобы применить это Составить номер функция, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.

После установки Kutools for Excel, пожалуйста, сделайте так:

1. Нажмите Кутулс > Содержание > Составить номер, см. снимок экрана:

2, Затем в Составьте число диалоговое окно, щелкните кнопку, чтобы выбрать список номеров, который вы хотите использовать, из Источник данных, а затем введите общее число в Сумма текстовое поле, см. снимок экрана:

3. А затем нажмите OK Кнопка, появится окно с подсказкой, чтобы напомнить вам выбрать ячейку, чтобы найти результат, см. снимок экрана:

4. Затем щелкните OK, и теперь все комбинации, которые равны данному номеру, были отображены, как показано на скриншоте ниже:

Источник статьи: http://ru.extendoffice.com/documents/excel/3557-excel-find-all-combinations-that-equal-given-sum.html

Подбор слагаемых для нужной суммы

Не очень частый, но и не экзотический случай. На моих тренингах такой вопрос задавали не один и не два раза 🙂 Суть в том, что мы имеем конечный набор каких-то чисел, из которых надо выбрать те, что дадут в сумме заданное значение.

В реальной жизни эта задача может выглядеть по-разному.

  • Например, мы выгрузили из интернет-банка все платежи, которые поступили на наш счет за последний месяц. Один из клиентов разбивает сумму своего платежа на несколько отдельных счетов и платит частями. Мы знаем общую сумму оплаты и количество счетов, но не знаем их сумм. Надо подобрать те суммы в истории платежей, которые дадут в общем заданное значение.
  • У нас есть несколько рулонов стали (линолеума, бумаги. ), из которых надо подобрать под заказ те, что дадут заданную длину.
  • Блэкджек или в народе «очко». Надо набрать карты суммарной стоимостью максимально близкой к 21 баллу, но не превысить этот порог.

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

Давайте рассмотрим несколько способов решения такой задачи в Excel.

Способ 1. Надстройка Поиск решения (Solver)

Эта надстройка входит в стандартный набор пакета Microsoft Office вместе с Excel и предназначена, в общем случае, для решения линейных и нелинейных задач оптимизации при наличии списка ограничений. Чтобы ее подключить, необходимо:

  • в Excel 2007 и новее зайти Файл — Параметры Excel — Надстройки — Перейти (File — Excel Options — Add-ins — Go)
  • в Excel 2003 и старше — открыть меню Сервис — Надстройки (Tools — Add-ins)

и установить соответствующий флажок. Тогда на вкладке или в меню Данные (Data) появится нужная нам команда.

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

  • Диапазон A1:A20 содержит наши числа, из которых мы будем выбирать нужные, чтобы «вписаться» в заданную сумму.
  • Диапазон В1:B20 будет своего рода набором переключателей, т.е. будет содержать нули или единички, показывая, отбираем мы данное число в выборку или нет.
  • В ячейке E2 стоит обычная автосумма всех единичек по столбцу B, подсчитывающая кол-во выбранных чисел.
  • В ячейке E3 с помощью функции СУММПРОИЗВ (SUMPRODUCT) считается сумма попарных произведений ячеек из столбцов А и B (то есть A1*B1+A2*B2+A3*B3+. ). Фактически, здесь подсчитывается сумма чисел из столбца А, отобранных единичками из столбца В.
  • В розовую ячейку E4 пользователь вводит желаемую сумму для подбора.
  • В ячейке E5 вычисляется абсолютное по модулю значение погрешности подбора с целью ее будущей минимизации.
  • Все желтых ячейках Е8:E17 хотелось бы получить список отобранных чисел, т.е. тех чисел из столбца А, напротив которых в столбце В есть единички. Для этого необходимо выделить сразу все (!) желтые ячейки и в них ввести вот такую формулу массива:

После ввода формулы ее необходимо ввести не как обычную формулу, а как формулу массива, т.е. нажать не Enter, а Ctrl+Shift+Enter. Похожая формула используется в примере о ВПР, выдающей сразу все найденные значения (а не только первое).

Теперь перейдем на вкладку (или в меню) Данные и запустим инструмент Поиск решения (Data — Solver):

В открывшемся окне необходимо:

  • Задать как целевую функцию (Target Cell) — ячейку вычисления погрешности подбора E5. Чуть ниже выбрать опцию — Минимум, т.к. мы хотим подобрать числа под заданную сумму с минимальной (а лучше даже нулевой) погрешностью.
  • В качестве изменяемых ячеек переменных (Changing cells) задать диапазон столбца переключателей B1:B20.
  • С помощью кнопки Добавить (Add) создать дополнительное условие на то, что ячейки диапазона B1:B20 должны быть бинарными (т.е. содержать только 0 или 1):



С помощью той же кнопки, при необходимости, создать ограничение на количество чисел в выборке. Например, если мы знаем, что сумма была разбита на 5 счетов, то:

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

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

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

Найденные комбинации можно сохранять виде сценариев (кнопка Сохранить сценарий), чтобы вернуться к нем позднее с помощью команды Данные — Анализ «что-если» — Диспетчер сценариев (Data — What-If Analysis — Scenario Manager):

И весьма удобно будет вывести все найденные решения, сохраненные в виде сценариев, в одной сравнительной таблице с помощью кнопки Отчет (Summary):

Способ 2. Макрос подбора

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

Для использования макроса нажмите сочетание Alt+F11, в открывшемся окне редактора Visual Basic вставьте новый модуль через меню Insert — Module и скопируйте туда этот код:

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

Источник статьи: http://www.planetaexcel.ru/techniques/11/179/index.php?page=user&id=11

Формула суммы по условию критерия выборки значений в Excel

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

Примеры формулы для суммы диапазонов с условием отбора в Excel

Ниже на рисунке представлен в таблице список счетов вместе с состоянием по каждому счету в виде положительных или отрицательных чисел. Допустим нам необходимо посчитать сумму всех отрицательных чисел для расчета суммарного расхода по движению финансовых средств. Этот результат будет позже сравниваться вместе с сумой положительных чисел с целью верификации и вывода балансового сальдо. Узнаем одинаковые ли суммы доходов и расходов – сойдется ли у нас дебит с кредитом. Для суммирования числовых значений по условию в Excel применяется логическая функция =СУММЕСЛИ():

Функция СУММЕСЛИ анализирует каждое значение ячейки в диапазоне B2:B12 и проверяет соответствует ли оно заданному условию (указанному во втором аргументе функции). Если значение меньше чем 0, тогда условие выполнено и данное число учитывается в общей итоговой сумме. Числовые значения больше или равно нулю игнорируются функцией. Проигнорированы также текстовые значения и пустые ячейки.

В приведенном примере сначала проверяется значения ячейки B2 и так как оно больше чем 0 – будет проигнорировано. Далее проверяется ячейка B3. В ней числовое значение меньше нуля, значит условие выполнено, поэтому оно добавляется к общей сумме. Данный процесс повторяется для каждой ячейки. В результате его выполнения суммированы значения ячеек B3, B6, B7, B8 и B10, а остальные ячейки не учитываются в итоговой сумме.

Обратите внимание что ниже результата суммирования отрицательных чисел находится формула суммирования положительных чисел. Единственное отличие между ними — это обратный оператор сравнения во втором аргументе где указывается условие для суммирования – вместо строки » 0″ (больше чем ноль). Теперь мы можем убедиться в том, что дебет с кредитом сходится балансовое сальдо будет равно нулю если сложить арифметически в ячейке B16 формулой =B15+B14.

Пример логического выражения в формуле для суммы с условием

Другой пример, когда нам нужно отдельно суммировать цены на группы товаров стоимости до 1000 и отдельно со стоимостью больше 1000. В таком случае одного оператора сравнения нам недостаточно ( =1000) иначе мы просуммируем сумму ровно в 1000 – 2 раза, что приведет к ошибочным итоговым результатам:

Это очень распространенная ошибка пользователей Excel при работе с логическими функциями!

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

Второй аргумент функции СУММЕСЛИ, то есть условие, которое должно быть выполнено, записывается между двойными кавычками. В данном примере используется символ сравнения – «меньше» ( ) меньше ( ), больше или равно (>=), меньше или равно ( Таблица правил составления критериев условий:

Чтобы создать условие Примените правило Пример
Значение равно заданному числу или ячейке с данным адресом. Не используйте знак равенства и двойных кавычек. =СУММЕСЛИ(B1:B10;3)
Значение равно текстовой строке. Не используйте знак равенства, но используйте двойные кавычки по краям. =СУММЕСЛИ(B1:B10;»Клиент5″)
Значение отличается от заданного числа. Поместите оператор и число в двойные кавычки. =СУММЕСЛИ(B1:B10;»>=50″)
Значение отличается от текстовой строки. Поместите оператор и число в двойные кавычки. =СУММЕСЛИ(B1:B10;»<>выплата»)
Значение отличается от ячейки по указанному адресу или от результата вычисления формулы. Поместите оператор сравнения в двойные кавычки и соедините его символом амперсант (&) вместе со ссылкой на ячейку или с формулой. =СУММЕСЛИ(A1:A10;» «&СЕГОДНЯ())
Значение содержит фрагмент строки Используйте операторы многозначных символов и поместите их в двойные кавычки =СУММЕСЛИ(A1:A10;»*кг*»;B1:B10)

Во втором аргументе критериев условий можно использовать разные функции и формулы. Ниже на рисунке изображен список дат и присвоенных им значений. Важно отметить что сегодня на момент написания статьи дата – «03.11.2018». Чтобы суммировать числовые значения только по сегодняшней дате используйте формулу:

Чтобы суммировать только значения от сегодняшнего дня включительно и до конца периода времени воспользуйтесь оператором «больше или равно» (>=) вместе с соответственной функцией =СЕГОДНЯ(). Формула c операторам (>=):

=»&СЕГОДНЯ();B2:B10)/B11′ >

Суммирование по неточному совпадению в условии критерия отбора

Во втором логическом аргументе критериев условий функции СУММЕСЛИ можно применять многозначные символы – (?)и(*) для составления относительных неточных запросов. Знак вопроса (?) – следует читать как любой символ, а звездочка (*) – это строка из любого количества любых символов или пустая строка. Например, нам необходимо просуммировать только защитные краски-лаки с кодом 3 английские буквы в начале наименования:

Суммируются все значения ячеек в диапазоне B2:B16 в соответствии со значениями в ячейках диапазона A2:A16, в которых после третьего символа фрагмент строки «-защита».

Таким образом удалось суммировать только определенную группу товаров в общем списке отчета по складу. Данный фрагмент наименования товара должен встречаться в определенном месте – 3 символа от начала строки. Нет необходимости использовать сложные формулы с функцией =ЛЕВСИМВ() и т.д. Достаточно лишь воспользоваться операторами многозначных символов чтобы сформулировать простой и лаконичный запрос к базе данных с минимальными нагрузками на системные ресурсы.

Источник статьи: http://exceltable.com/formuly/formula-summy-po-usloviyu

Excel как найти ячейки сумма которых равна заданному числу

Как найти в Excel все комбинации, равные заданной сумме?

Например, у меня есть следующий список чисел, и теперь я хочу знать, какая комбинация чисел в списке дает в сумме 480, на следующем скриншоте вы можете увидеть, что есть пять групп возможных комбинаций, которые в сумме равны до 480, например, 300 + 60 + 120, 300 + 60 + 40 + 80 и т. д. В этой статье я расскажу о некоторых методах определения суммирования ячеек до определенного значения в Excel.

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

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

1. Выберите список номеров и определите для этого списка имя диапазона — Range1 в Имя Box, и нажмите Enter ключ для завершения определения имени диапазона, см. снимок экрана:

2. После определения имени диапазона для списка номеров вам необходимо создать еще два имени диапазона в Менеджер имен коробка, пожалуйста, нажмите Формулы > Менеджер имен, В Менеджер имен диалоговое окно, нажмите Новинки кнопку см. скриншоты:

3. В выскочившем Новое имя диалоговое окно введите имя List1 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

4. Нажмите OK вернуться к Менеджер имен диалоговое окно, затем продолжайте щелкать Новинки кнопку, чтобы создать другое имя диапазона, в Новое имя диалоговое окно введите имя List2 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & 2 ^ СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

5. После создания имен диапазонов примените следующую формулу массива к ячейке B2:

=IF(ISNUMBER(MATCH(ROWS($1:1),IF(INDEX(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),MATCH(TRUE,MMULT(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),Range1)=$C$2,0),),TRANSPOSE(List1)),0)),»X»,»») , и нажмите Shift + Ctrl + Enter вместе, затем перетащите дескриптор заполнения вниз в ячейку B8, последнее число в списке, и вы увидите, что числа, общая сумма которых составляет 480, помечены как X в столбце B, см. снимок экрана:

  • Ноты:
  • В приведенной выше длинной формуле:List1, List2 и Range1 имена диапазонов, которые вы создали на предыдущих этапах, C2 — это конкретное значение, к которому вы хотите добавить числа.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

Быстрый и простой поиск и перечисление всех комбинаций, равных заданной сумме, в Excel

Kutools for Excel‘s Составить номер Утилита может помочь вам быстро и легко найти и перечислить все комбинации и конкретные комбинации, которые равны заданной сумме. Нажмите, чтобы загрузить Kutools for Excel!

Kutools for Excel: с более чем

Найдите комбинацию ячеек, которая равна заданной сумме, с помощью надстройки Solver

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

1. Во-первых, вам нужно активировать это решающее устройство добавить в, перейдите к Файл > Опции, В Параметры Excel диалоговое окно, нажмите Надстройки на левой панели, а затем щелкните Надстройка Solver из Неактивные надстройки приложений раздел, см. снимок экрана:

2. Затем нажмите Go для входа в Надстройки диалог, проверьте Надстройка Solver и нажмите OK для успешной установки этой надстройки.

3. После активации надстройки Solver вам необходимо ввести эту формулу в ячейку B9: = СУММПРОИЗВ (B2: B9; A2: A9) (B2: B9 — это пустые ячейки столбца рядом со списком номеров, и A2: A9 это список номеров, который вы используете. ) и нажмите Enter ключ, см. снимок экрана:

4. Затем нажмите Данные > решающее устройство , чтобы перейти к Параметр решателя диалоговое окно, в диалоговом окне выполните следующие операции:

(1.) Щелкните кнопка для выбора ячейки B10 где ваша формула из Установить цель раздел;

(2.) Тогда в к раздел, выберите Значение, и введите целевое значение 480 как вам нужно;

(3.) Под Изменяя ячейки переменных раздел, нажмите кнопка для выбора диапазона ячеек B2: B9 где будут отмечены ваши соответствующие числа.

5. Затем нажмите Добавить кнопку, чтобы перейти к Добавить ограничение диалоговое окно, нажмите кнопка для выбора диапазона ячеек B2: B9И выберите бункер из выпадающего списка см. снимок экрана:

6. Нажмите OK вернуться в Параметр решателя диалоговое окно, затем щелкните Решить кнопку, через несколько минут Результаты решателя появится диалоговое окно, и вы увидите, что комбинация ячеек, равная заданной сумме 480, помечена как 1. В поле Результаты решателя диалог, пожалуйста, выберите Сохранить решение для решения и нажмите OK для выхода из диалога. Смотрите скриншот:

Внимание: Этот метод также позволяет получить только одну комбинацию ячеек, если существует более одной комбинации значений, сумма которой равна определенному значению.

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

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

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

1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.

Код VBA: найти комбинацию ячеек, равную заданной сумме:

3. Затем сохраните и закройте это окно кода, а затем вернитесь на рабочий лист и введите эту формулу = getcombination (A2: A9, C2) в пустую ячейку и нажмите Enter key, вы получите следующий результат, который отображает комбинационные числа, равные заданной сумме, см. снимок экрана:

  • Ноты:
  • В приведенной выше формуле A2: A9 — диапазон номеров, аC2 содержит целевое значение, которому вы хотите равняться.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

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

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

Советы: Чтобы применить это Составить номер функция, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.

После установки Kutools for Excel, пожалуйста, сделайте так:

1. Нажмите Кутулс > Содержание > Составить номер, см. снимок экрана:

2, Затем в Составьте число диалоговое окно, щелкните кнопку, чтобы выбрать список номеров, который вы хотите использовать, из Источник данных, а затем введите общее число в Сумма текстовое поле, см. снимок экрана:

3. А затем нажмите OK Кнопка, появится окно с подсказкой, чтобы напомнить вам выбрать ячейку, чтобы найти результат, см. снимок экрана:

4. Затем щелкните OK, и теперь все комбинации, которые равны данному номеру, были отображены, как показано на скриншоте ниже:

Источник статьи: http://ru.extendoffice.com/documents/excel/3557-excel-find-all-combinations-that-equal-given-sum.html?comment_id=27514

Excel как найти ячейки сумма которых равна заданному числу

Как найти в Excel все комбинации, равные заданной сумме?

Например, у меня есть следующий список чисел, и теперь я хочу знать, какая комбинация чисел в списке дает в сумме 480, на следующем скриншоте вы можете увидеть, что есть пять групп возможных комбинаций, которые в сумме равны до 480, например, 300 + 60 + 120, 300 + 60 + 40 + 80 и т. д. В этой статье я расскажу о некоторых методах определения суммирования ячеек до определенного значения в Excel.

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

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

1. Выберите список номеров и определите для этого списка имя диапазона — Range1 в Имя Box, и нажмите Enter ключ для завершения определения имени диапазона, см. снимок экрана:

2. После определения имени диапазона для списка номеров вам необходимо создать еще два имени диапазона в Менеджер имен коробка, пожалуйста, нажмите Формулы > Менеджер имен, В Менеджер имен диалоговое окно, нажмите Новинки кнопку см. скриншоты:

3. В выскочившем Новое имя диалоговое окно введите имя List1 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

4. Нажмите OK вернуться к Менеджер имен диалоговое окно, затем продолжайте щелкать Новинки кнопку, чтобы создать другое имя диапазона, в Новое имя диалоговое окно введите имя List2 в Имя и фамилия поле и введите эту формулу = СТРОКА (КОСВЕННАЯ («1:» & 2 ^ СТРОКА (Диапазон1))) (Range1 это имя диапазона, которое вы создали на шаге 1) в Относится к поле, см. снимок экрана:

5. После создания имен диапазонов примените следующую формулу массива к ячейке B2:

=IF(ISNUMBER(MATCH(ROWS($1:1),IF(INDEX(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),MATCH(TRUE,MMULT(MOD(INT((List2-1)/2^(TRANSPOSE(List1)-1)),2),Range1)=$C$2,0),),TRANSPOSE(List1)),0)),»X»,»») , и нажмите Shift + Ctrl + Enter вместе, затем перетащите дескриптор заполнения вниз в ячейку B8, последнее число в списке, и вы увидите, что числа, общая сумма которых составляет 480, помечены как X в столбце B, см. снимок экрана:

  • Ноты:
  • В приведенной выше длинной формуле:List1, List2 и Range1 имена диапазонов, которые вы создали на предыдущих этапах, C2 — это конкретное значение, к которому вы хотите добавить числа.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

Быстрый и простой поиск и перечисление всех комбинаций, равных заданной сумме, в Excel

Kutools for Excel‘s Составить номер Утилита может помочь вам быстро и легко найти и перечислить все комбинации и конкретные комбинации, которые равны заданной сумме. Нажмите, чтобы загрузить Kutools for Excel!

Kutools for Excel: с более чем

Найдите комбинацию ячеек, которая равна заданной сумме, с помощью надстройки Solver

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

1. Во-первых, вам нужно активировать это решающее устройство добавить в, перейдите к Файл > Опции, В Параметры Excel диалоговое окно, нажмите Надстройки на левой панели, а затем щелкните Надстройка Solver из Неактивные надстройки приложений раздел, см. снимок экрана:

2. Затем нажмите Go для входа в Надстройки диалог, проверьте Надстройка Solver и нажмите OK для успешной установки этой надстройки.

3. После активации надстройки Solver вам необходимо ввести эту формулу в ячейку B9: = СУММПРОИЗВ (B2: B9; A2: A9) (B2: B9 — это пустые ячейки столбца рядом со списком номеров, и A2: A9 это список номеров, который вы используете. ) и нажмите Enter ключ, см. снимок экрана:

4. Затем нажмите Данные > решающее устройство , чтобы перейти к Параметр решателя диалоговое окно, в диалоговом окне выполните следующие операции:

(1.) Щелкните кнопка для выбора ячейки B10 где ваша формула из Установить цель раздел;

(2.) Тогда в к раздел, выберите Значение, и введите целевое значение 480 как вам нужно;

(3.) Под Изменяя ячейки переменных раздел, нажмите кнопка для выбора диапазона ячеек B2: B9 где будут отмечены ваши соответствующие числа.

5. Затем нажмите Добавить кнопку, чтобы перейти к Добавить ограничение диалоговое окно, нажмите кнопка для выбора диапазона ячеек B2: B9И выберите бункер из выпадающего списка см. снимок экрана:

6. Нажмите OK вернуться в Параметр решателя диалоговое окно, затем щелкните Решить кнопку, через несколько минут Результаты решателя появится диалоговое окно, и вы увидите, что комбинация ячеек, равная заданной сумме 480, помечена как 1. В поле Результаты решателя диалог, пожалуйста, выберите Сохранить решение для решения и нажмите OK для выхода из диалога. Смотрите скриншот:

Внимание: Этот метод также позволяет получить только одну комбинацию ячеек, если существует более одной комбинации значений, сумма которой равна определенному значению.

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

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

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

1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.

Код VBA: найти комбинацию ячеек, равную заданной сумме:

3. Затем сохраните и закройте это окно кода, а затем вернитесь на рабочий лист и введите эту формулу = getcombination (A2: A9, C2) в пустую ячейку и нажмите Enter key, вы получите следующий результат, который отображает комбинационные числа, равные заданной сумме, см. снимок экрана:

  • Ноты:
  • В приведенной выше формуле A2: A9 — диапазон номеров, аC2 содержит целевое значение, которому вы хотите равняться.
  • Если несколько комбинаций значений имеют сумму, равную определенному значению, отображается только одна комбинация.

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

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

Советы: Чтобы применить это Составить номер функция, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.

После установки Kutools for Excel, пожалуйста, сделайте так:

1. Нажмите Кутулс > Содержание > Составить номер, см. снимок экрана:

2, Затем в Составьте число диалоговое окно, щелкните кнопку, чтобы выбрать список номеров, который вы хотите использовать, из Источник данных, а затем введите общее число в Сумма текстовое поле, см. снимок экрана:

3. А затем нажмите OK Кнопка, появится окно с подсказкой, чтобы напомнить вам выбрать ячейку, чтобы найти результат, см. снимок экрана:

4. Затем щелкните OK, и теперь все комбинации, которые равны данному номеру, были отображены, как показано на скриншоте ниже:

Источник статьи: http://ru.extendoffice.com/documents/excel/3557-excel-find-all-combinations-that-equal-given-sum.html?comment_id=28126

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *