Разбить число на слагаемые эксель
Здравствуйте! Подскажите пожалуйста, как разложить число на составляющие его цифры (пример прилагается). Как проще и лучше это реализовать, макросом или формулой. Спасибо!
Здравствуйте! Подскажите пожалуйста, как разложить число на составляющие его цифры (пример прилагается). Как проще и лучше это реализовать, макросом или формулой. Спасибо! djon2012
для написания в столбце В и протягивании от него вправо. Если формула не в В, а, например, в Е, то -1 нужно заменить на -4, что не очень удобно
Можно написать так
для написания в столбце В и протягивании от него вправо. Если формула не в В, а, например, в Е, то -1 нужно заменить на -4, что не очень удобно
Можно написать так
для написания в столбце В и протягивании от него вправо. Если формула не в В, а, например, в Е, то -1 нужно заменить на -4, что не очень удобно
Можно написать так
Подскажите пожалуйста, почему в прикрепленном файле число в ячейке А2 неправильно разлагается на цифры. Спасибо!
Подскажите пожалуйста, почему в прикрепленном файле число в ячейке А2 неправильно разлагается на цифры. Спасибо! djon2012
Потому, что Excel умный слишком. Он автоматически преобразовал большое число в
7,45636353444355E+30
Вот так попробуйте
Но только учтите, что в Excel выводится 15 значащих цифр, (остальное заполняется нулями) и Ваше произведение на самом деле может быть вовсе не таким, как посчитал его Excel
Потому, что Excel умный слишком. Он автоматически преобразовал большое число в
7,45636353444355E+30
Вот так попробуйте
Но только учтите, что в Excel выводится 15 значащих цифр, (остальное заполняется нулями) и Ваше произведение на самом деле может быть вовсе не таким, как посчитал его Excel _Boroda_
Но только учтите, что в Excel выводится 15 значащих цифр, (остальное заполняется нулями) и Ваше произведение на самом деле может быть вовсе не таким, как посчитал его Excel Автор - _Boroda_
Дата добавления - 05.07.2019 в 09:22
Спасибо Boroda за совет, а то я пробовал изменять числовой формат в ячейке но увы безрезультатно. djon2012
А если цыфры идут и двузначные тоже. Например 4 12 15 22 только слитно. Это не выполнимо этими формулами
А если цыфры идут и двузначные тоже. Например 4 12 15 22 только слитно. Это не выполнимо этими формулами Leonid9156
двузначных цИфр не бывает, бывают числа. и закономерный вопрос - по какому признаку надо определить, что именно 4 12 15 22, а не 41 2 15 22 или 4 1 21 52 2 ?
[p.s.]а исходная задачка в 365 решается без протяжки формул:
двузначных цИфр не бывает, бывают числа. и закономерный вопрос - по какому признаку надо определить, что именно 4 12 15 22, а не 41 2 15 22 или 4 1 21 52 2 ?
[p.s.]а исходная задачка в 365 решается без протяжки формул:
двузначных цИфр не бывает, бывают числа. и закономерный вопрос - по какому признаку надо определить, что именно 4 12 15 22, а не 41 2 15 22 или 4 1 21 52 2 ?
[p.s.]а исходная задачка в 365 решается без протяжки формул:
И как формула должна понять, что именно извлекать 41 или 12, 21 или 15 и т.д.?
П.С. Пока писал Михаил меня опередил)
И как формула должна понять, что именно извлекать 41 или 12, 21 или 15 и т.д.?
П.С. Пока писал Михаил меня опередил) Egyptian
И как формула должна понять, что именно извлекать 41 или 12, 21 или 15 и т.д.?
П.С. Пока писал Михаил меня опередил) Автор - Egyptian
Дата добавления - 13.03.2022 в 22:24
ну, смею предположить что записана последовательность по возрастанию и следовательно можно предположить как разделить Но вот анализ формулой много сложнее и совершенно не относится к теме.
ну, смею предположить что записана последовательность по возрастанию и следовательно можно предположить как разделить Но вот анализ формулой много сложнее и совершенно не относится к теме. bmv98rus
Не очень частый, но и не экзотический случай. На моих тренингах такой вопрос задавали не один и не два раза :) Суть в том, что мы имеем конечный набор каких-то чисел, из которых надо выбрать те, что дадут в сумме заданное значение.
В реальной жизни эта задача может выглядеть по-разному.
- Например, мы выгрузили из интернет-банка все платежи, которые поступили на наш счет за последний месяц. Один из клиентов разбивает сумму своего платежа на несколько отдельных счетов и платит частями. Мы знаем общую сумму оплаты и количество счетов, но не знаем их сумм. Надо подобрать те суммы в истории платежей, которые дадут в общем заданное значение.
- У нас есть несколько рулонов стали (линолеума, бумаги. ), из которых надо подобрать под заказ те, что дадут заданную длину.
- Блэкджек или в народе "очко". Надо набрать карты суммарной стоимостью максимально близкой к 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 хотелось бы получить список отобранных чисел, т.е. тех чисел из столбца А, напротив которых в столбце В есть единички. Для этого необходимо выделить сразу все (!) желтые ячейки и в них ввести вот такую формулу массива:
=ЕСЛИОШИБКА(ИНДЕКС($A$1:$A$20;НАИМЕНЬШИЙ(ЕСЛИ(B1:B20=1;СТРОКА(B1:B20);"");СТРОКА()-СТРОКА($E$8)+1));"")
=IFERROR(INDEX($A$1:$A$20;SMALL(IF(B1:B20=1;ROW(B1:B20);"");ROW()-ROW($E$8)+1));"")
После ввода формулы ее необходимо ввести не как обычную формулу, а как формулу массива, т.е. нажать не Enter, а Ctrl+Shift+Enter. Похожая формула используется в примере о ВПР, выдающей сразу все найденные значения (а не только первое).
Теперь перейдем на вкладку (или в меню) Данные и запустим инструмент Поиск решения (Data - Solver):
В открывшемся окне необходимо:
- Задать как целевую функцию (Target Cell) - ячейку вычисления погрешности подбора E5. Чуть ниже выбрать опцию - Минимум, т.к. мы хотим подобрать числа под заданную сумму с минимальной (а лучше даже нулевой) погрешностью.
- В качестве изменяемых ячеек переменных (Changing cells) задать диапазон столбца переключателей B1:B20.
- С помощью кнопки Добавить (Add) создать дополнительное условие на то, что ячейки диапазона B1:B20 должны быть бинарными (т.е. содержать только 0 или 1):
После ввода всех параметров и ограничений запускаем процесс подбора кнопкой Найти решение (Solve). Процесс подбора занимает от нескольких секунд до нескольких минут (в тяжелых случаях) и заканчивается появлением следующего окна:
Теперь можно либо оставить найденное решение подбора (Сохранить найденное решение), либо откатиться к прежним значениям (Восстановить исходные значения).
Необходимо отметить, что для такого класса задач существует не одно, а целое множество решений, особенно, если не приравнивать жестко погрешность к нулю. Поэтому запуск Поиска решения с разными начальными данными (т.е. разными комбинациями 0 и 1 в столбце В) может приводить к разным наборам чисел в выборках в пределах заданных ограничений. Так что имеет смысл прогнать эту процедуру несколько раз, произвольно изменяя переключатели в столбце В.
Найденные комбинации можно сохранять виде сценариев (кнопка Сохранить сценарий), чтобы вернуться к нем позднее с помощью команды Данные - Анализ "что-если" - Диспетчер сценариев (Data - What-If Analysis - Scenario Manager):
И весьма удобно будет вывести все найденные решения, сохраненные в виде сценариев, в одной сравнительной таблице с помощью кнопки Отчет (Summary):
Способ 2. Макрос подбора
В этом способе всю работу делает макрос, который тупо перебирает случайные комбинации чисел, пока не наткнется на нужную сумму в пределах разрешенной погрешности. Добавлять столбец с нулями и единичками и формулы в этом случае не нужно.
Для использования макроса нажмите сочетание Alt+F11, в открывшемся окне редактора Visual Basic вставьте новый модуль через меню Insert - Module и скопируйте туда этот код:
Аналогично первому способу, запуская макрос несколько раз, можно получать разные наборы подходящих чисел.
P.S. Сейчас набегут энтузиасты с мехмата МГУ с криками "Тупой перебор - это неэстетично!" Да, я в курсе, что прямой перебор вариантов - это не самый оптимальный способ поиска. Да, существует много умных алгоритмов поиска решения таких задач, которые сокращают время поиска и находят нужную комбинацию заметно быстрее. Могу даже рассказать про парочку. Но мне на данном этапе существующей скорости "тупого перебора" вполне достаточно - обработка массива из 1000 ячеек идет меньше секунды. Готов подождать :)
Здравствуйте,
у меня есть массив чисел в котором сумма некоторых составляет заданную сумму,
можно ли формулой определить эти слагаемые(или цветом или рядом поставить 1)?
Здравствуйте,
у меня есть массив чисел в котором сумма некоторых составляет заданную сумму,
можно ли формулой определить эти слагаемые(или цветом или рядом поставить 1)? l-lisa
Спасибо, но я так поняла, чтобы воспользоваться поиском решения нужно иметь отметки напротив слагаемых, а мне нужно их найти.
Спасибо, но я так поняла, чтобы воспользоваться поиском решения нужно иметь отметки напротив слагаемых, а мне нужно их найти. l-lisa
у меня не подключается поиск решения, хотя в надстройках он есть.
но всё равно интересно можно такое формулой реализовать?
у меня не подключается поиск решения, хотя в надстройках он есть.
но всё равно интересно можно такое формулой реализовать? l-lisa
Вы делаете через Файл - Параметры - Надстройки - Надстройки Excel (внизу в вып. списке) - Перейти, ставите галку, жмете ОК? Если да, то что говорит, почему не хочет?
Формулой? Нужно подумать, но вот так сходу ничего в голову не приходит дельного. Боюсь, что только для ограниченного (небольшого) количества слагаемых и все равно там монстр получится. Хотя, могу и ошибаться - не думал серьезно над этим вопросом.
Вы делаете через Файл - Параметры - Надстройки - Надстройки Excel (внизу в вып. списке) - Перейти, ставите галку, жмете ОК? Если да, то что говорит, почему не хочет?
Формулой? Нужно подумать, но вот так сходу ничего в голову не приходит дельного. Боюсь, что только для ограниченного (небольшого) количества слагаемых и все равно там монстр получится. Хотя, могу и ошибаться - не думал серьезно над этим вопросом. _Boroda_
Вы делаете через Файл - Параметры - Надстройки - Надстройки Excel (внизу в вып. списке) - Перейти, ставите галку, жмете ОК? Если да, то что говорит, почему не хочет?
Формулой? Нужно подумать, но вот так сходу ничего в голову не приходит дельного. Боюсь, что только для ограниченного (небольшого) количества слагаемых и все равно там монстр получится. Хотя, могу и ошибаться - не думал серьезно над этим вопросом. Автор - _Boroda_
Дата добавления - 18.09.2014 в 22:37
а всё -таки реально такую формулу придумать или тут только макрос пройдёт? ведь для проверки подходящих чисел нужен цикл, а формулой похоже не выйдет.
а всё -таки реально такую формулу придумать или тут только макрос пройдёт? ведь для проверки подходящих чисел нужен цикл, а формулой похоже не выйдет. l-lisa
а всё -таки реально такую формулу придумать или тут только макрос пройдёт? ведь для проверки подходящих чисел нужен цикл, а формулой похоже не выйдет. Автор - l-lisa
Дата добавления - 18.09.2014 в 22:42
Разбить число на отдельные цифры в Excel
В этом руководстве объясняется, как использовать комбинацию функций MID и COLUMN для разделения определенного числа в ячейке на отдельные цифры в Excel.
Как разбить число на отдельные цифры в Excel?
Как показано на скриншоте ниже, вы хотите разделить число в каждой ячейке на отдельные цифры. Пожалуйста, сделайте следующее, чтобы это сделать.
Общая формула
аргументы
$ B3: Представляет ячейку, содержащую число, которое вы хотите разделить на отдельные цифры;
$ D3: Представляет ячейку для вывода первой цифры числа.
Как пользоваться этой формулой?
1. Выберите пустую ячейку для вывода первой цифры. В данном случае я выбираю D3.
2. Введите в нее приведенную ниже формулу и нажмите Enter ключ. Затем была извлечена первая цифра числа в ячейке B3.
=MID($B3,COLUMN()-(COLUMN($D3)- 1),1)
3. Выберите ячейку результата, а затем перетащите ее маркер заполнения вправо, чтобы применить формулу к правым ячейкам, пока не будут извлечены все цифры числа в B3.
4. Не снимая выделения с указанных выше ячеек, перетащите маркер заполнения вниз, чтобы получить все цифры других ячеек в столбце B. См. Снимок экрана.
Как работает эта формула?
=MID($B3,COLUMN()-(COLUMN($D3)- 1),1)
1. COLUMN() : В этом случае я выбираю ячейку D3 для ввода формулы, поэтому функция COLUMN возвращает 4, поскольку столбец D является четвертым столбцом на листе;
2. COLUMN($D3) : Здесь функция COLUMN возвращает номер столбца ссылки $ D3. Здесь результат 4;
3. MID(12345,4-(4- 1),1) : Функция MID извлекает одну цифру из числа «12345», начиная с первой цифры.
Связанные функции
Функция Excel MID
Функция Excel MID возвращает определенное количество символов из текстовой строки, начиная с указанной вами позиции, в зависимости от количества указанных вами символов.
СТОЛБЕЦ в Excel
Функция СТОЛБЕЦ Excel возвращает номер столбца, в котором отображается формула, или номер столбца для данной ссылки.
Родственные формулы
Разделение размеров на две части в Excel
В этой статье объясняется, как использовать формулу для разделения размеров в ячейке на две части без единиц измерения (индивидуальная длина и ширина).
Отделяйте числа от единиц измерения
В этой статье объясняется, как использовать формулу для отделения чисел от единиц измерения.
Разделить текст и числа в ячейке в Excel
Если вы хотите разделить текст и числа в ячейке на разные ячейки столбца с формулами, это руководство окажет вам услугу.
Разделить текст с разделителем в ячейке в Excel
В этой статье мы предлагаем пошаговое руководство, которое поможет вам разделить текст в ячейке с помощью определенного разделителя в Excel.
Разделить текст и числа в ячейке в Excel
Предположим, что данные ячейки смешаны с текстом и числами, как вы можете разделить их на отдельные ячейки столбца? Этот туториал покажет вам подробные шаги, чтобы разобраться с формулами.
Лучшие инструменты для работы в офисе
Kutools for Excel - поможет вам выделиться из толпы
Хотите быстро и безупречно выполнять свою повседневную работу? Kutools for Excel предлагает мощные расширенные функции 300 (объединение книг, сумма по цвету, разделение содержимого ячеек, дата преобразования и т. Д.) И экономия 80% времени для вас.
Как разбить или разбить число на отдельные цифры в Excel?
Предположим, вам нужно разбить номер на отдельные цифры, как показано на скриншоте ниже, что вы можете сделать для этого? Эта статья предоставит вам два метода.
Kutools for Excel's Split Cells utility helps you easily split number into individual digits or split cell contents by space, comma, new line or other separators into separated rows or columns in Excel as below screenshot showed. Download the full feature 60-day free trail of Kutools for Excel now!
- Reuse Anything: Add the most used or complex formulas, charts and anything else to your favorites, and quickly reuse them in the future.
- More than 20 text features: Extract Number from Text String; Extract or Remove Part of Texts; Convert Numbers and Currencies to English Words.
- Merge Tools : Multiple Workbooks and Sheets into One; Merge Multiple Cells/Rows/Columns Without Losing Data; Merge Duplicate Rows and Sum.
- Split Tools : Split Data into Multiple Sheets Based on Value; One Workbook to Multiple Excel, PDF or CSV Files; One Column to Multiple Columns.
- Paste Skipping Hidden/Filtered Rows; Count And Sum by Background Color ; Send Personalized Emails to Multiple Recipients in Bulk.
- Super Filter: Create advanced filter schemes and apply to any sheets; Sort by week, day, frequency and more; Filter by bold, formulas, comment.
- More than 300 powerful features; Works with Office 2007-2019 and 365; Supports all languages; Easy deploying in your enterprise or organization.
Разбейте или разделите номер на отдельные цифры с помощью формулы
В этом разделе будет показана формула для разделения выбранных числовых ячеек на отдельные цифры в Excel.
1. Выберите пустую ячейку (говорит ячейка C1), чтобы найти первую разделенную цифру числа в ячейке A1, затем введите формулу = MID ($ A1; COLUMN () - (COLUMN ($ C1) - 1); 1) в строку формул, а затем нажмите Enter ключ.
Внимание: В формуле A1 - это ячейка с номером, который нужно разделить на цифры, а C1 - это ячейка для определения первой разделенной цифры. Пожалуйста, измените их по своему усмотрению.
2. Продолжайте выбирать ячейку C1, затем перетащите маркер заполнения в правые ячейки, пока все цифры ячейки A1 не будут разделены.
3. Не снимая выделения с этих ячеек с разделенными цифрами, перетащите маркер заполнения вниз к ячейкам, пока все числа не будут разделены на отдельные цифры. Смотрите скриншот:
Разбейте или разделите номер на отдельные цифры с помощью Kutools for Excel
Разделить клетки полезности Kutools for Excel помогает легко разделить все выбранные числовые ячейки на отдельные цифры сразу. Пожалуйста, сделайте следующее.
Перед применением Kutools for Excel, Пожалуйста, сначала скачайте и установите.
1. Выделите ячейки с номерами, которые нужно разбить на цифры, затем нажмите Кутулс > Слияние и разделение > Разделить клетки. Смотрите скриншот:
2. в Разделить клетки диалоговое окно, выберите Разделить на столбцы вариант в Тип и в разделе Указать разделитель выберите Указать ширину и введите число 1 в текстовое поле. Щелкните значок OK кнопку.
3. В следующем всплывающем окне Разделить клетки диалоговом окне укажите пустую ячейку для поиска первой цифры разделения, а затем щелкните OK кнопку.
После нажатия OK Кнопка, все числа в выбранных ячейках сразу же разбиваются на отдельные цифры, как показано на скриншоте ниже.
Если вы хотите получить бесплатную (30-дневную) пробную версию этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Office Tab - Tabbed Browsing, Editing, and Managing of Workbooks in Excel:
Office Tab brings the tabbed interface as seen in web browsers such as Google Chrome, Internet Explorer new versions and Firefox to Microsoft Excel. It will be a time-saving tool and irreplaceble in your work. See below demo:
Читайте также: