Как найти сумму цифр числа в excel

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

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

Рассуждая примерно аналогично с предыдущими авторами ответов получились такие формулы.

В расчете используется модуль, сумма, целая часть числа (floor) и округление (round). Надеюсь, что подобными функциями Excel располагает.

Рассмотрим первую формулу. Вычисление суммы чисел целой части числа (Sc).

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

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

Вторая формула оказалась сложнее и капризней. Сумма цифр дробной части числа (Sd).

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

Третья формула общая сумма цифр (Sob)

Теперь о том почему у меня именно 9 разрядов целой части и 6 дробной.

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

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

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

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

Я понимаю, что не ответил на поставленный вопрос, но мне было интересно для себя разобраться с данной задачей.

Ссылка на расчет.


Пусть имеется число 456258 и необходимо найти сумму всех его цифр, т.е. 4+5+6+2+5+8. Сделать это можно

одной формулой.

Пусть ячейка

А1

содержит исходное число

456258

.

Просуммировать все цифры числа можно одной, но достаточно сложной формулой

=СУММПРОИЗВ(–ПСТР(A1;СТРОКА(ДВССЫЛ(“A1:A”&ДЛСТР(A1)));1))

Разберем подробнее (см.

файл примера

).

  • функция

    ДВССЫЛ()

    возвращает

    массив чисел

    из диапазона

    А1:А6

    {456258:0:0:0:0:0}. Ссылка на ячейку

    А6

    сформирована текстовой строкой “A1:A” и функцией

    ДЛСТР()

    , которая вычислила количество цифр в числе (6). Сами элементы массива не важны, главное – его размерность – 6, т.е. вместо

    ДВССЫЛ(“A1:A”&ДЛСТР(A1))

    можно было написать формулу

    ДВССЫЛ(“Z1:Z”&ДЛСТР(A1))

    .

  • функция

    СТРОКА()

    формирует

    массив последовательных чисел

    {1:2:3:4:5:6} из номеров строк полученного на предыдущем шаге массива, начиная с 1.

  • функция

    ПСТР()

    извлекает последовательно по одному текстовому символу из исходного числа и возвращает массив {“4″:”5″:”6″:”2″:”5″:”8”}.
  • двойное отрицание (–)

    преобразует текст в числовую форму

    и возвращает массив {4:5:6:2:5:8}.

  • функция

    СУММПРОИЗВ()

    суммирует элементы массива.

Промежуточные результаты вычисления можно увидеть, выделив в

Строке формул

интересующую часть формулы, например

“A1:A”&ДЛСТР(A1)

, а затем нажав

клавишу

F9.

In Excel, we can easily add the digits of a number. Usually, calculations that involve multiple values can be dealt with the help of array formulas, but here, we are going to find the sum of the digits of a number using non-array formulas. As an example, say we have a number 238 in one of the cells of the Excel sheet and we want to find the sum of the digits of this number. It would essentially be 2 + 3 + 8 which equals 13. Let us see how to do that without using an array formula. But before jumping on to the non-array formula method of finding the sum of the digits of a number, let us first see what is an array formula.

Array Formula

An array formula is nothing but a method that enables one to do multiple calculations at once. It can also do a calculation more than once in a specific cell range. Look at the example below. Say we have to find the product of quantities and cost as shown in the excel sheet below. If we do this using an array formula, then we can get the result much faster. 

Example

We can use the multi-cell array formula for multiplying the quantity and cost column.

Multi-cell array formula

Here, we have to use a single formula and we will get results of all the rows. To calculate all the values of the Amount table, we will first select the area where we want to see the end result. Press F2 after selecting the required area so that you come back on to the first cell of the selected area. 

Select-the-required-area-and-press-F2

Then, write the array formula in the first cell where the cursor is placed. The formula is simply: =B2:B4*C2:C4

Apply-the-formula

Now, don’t just press enter because then it will print the result in only one cell. These formulas are CSE, meaning they will execute properly only when you click CTRL + SHIFT + ENTER. See the result. 

Result

Note that Excel automatically adds curly braces around the formula. This is to indicate that it is an array formula. 

Non-array Formula 

There are two non-array formulas that we can use to find the sum of the digits of a number. These are:

  1. Sum and Index Formula
  2. Sumproduct and Indirect Formula

Let us look at them one by one. 

1. Sum and Index formula: Here, we have a number 243 and we have to find the sum of its digits. We will go to the cell in which we want to get the sum and write the following formula:

=SUM(INDEX(1*(MID(A1,ROW(INDIRECT(“1:”&LEN(A1))),1)),,))

This formula uses various functions. Let us understand this formula a bit more:

  • The INDEX function will return the value at a given location. In this case, it would be the value of these numbers. 
  • The MID function will return a sequence of values from the middle of the string. In this case, the string is nothing but the number itself.
  • The ROW function will simply return the number for the referenced. Here the row number will be A1. 
  • The INDIRECT function will return a valid cell reference from this string of numbers. 
  • The LEN function will return the number of characters of the string. In this case, it would be 3. 

Sum and Index formula

Sum-and-Index-formula

Just press Enter and you will get the result. 

Final-result

2. Sumproduct and Indirect Formula: Again we have a number 243 and we have to find the sum of its digits. We will go to the cell in which we want to get the sum and write the following formula:

=SUMPRODUCT(MID(A1,ROW(INDIRECT(“1:” & LEN(A1))),1)*1)

Sumproduct-and-indirect-formula

There is one more formula under this category that works the same:

=SUMPRODUCT(MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)+0)

It is shown here:

Sumproduct-and-offset-formula

Both these formulae give the same output:

Final-result

A few more functions are used in this formula. These are:

  • The OFFSET function will return a range specifying a certain number of rows and columns to address a cell. 
  • The SUMPRODUCT function first multiplies a range of cells and then returns the sum of the product. 

Last Updated :
01 Jul, 2022

Like Article

Save Article

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

В настоящей заметке использованы материалы книги Джона Уокенбаха MS Excel 2007. Библия пользователя. – М.: Издательский дом «Вильямс», 2008. – 816 с.

Скачать заметку в формате Word, примеры в формате Excel

Сумма цифр целого числа

Приведенная ниже формула массива возвращает сумму цифр, составляющих положительное целое число, которое содержится в ячейке А1. Например, если в этой ячейке хранится число 409, то формула вернет число 13 (сумму цифр 4, 0 и 9): {=СУММ(ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1)*1)}

Чтобы понять, как работает эта формула, рассмотрим последовательно ее работу.

1. ДЛСТР(A1) возвращает количество цифр числа, находящегося в ячейке А1. В нашем примере, 3.

2. Функция {=СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)))} возвращает массив целых чисел, который начинается с единицы и заканчивается числом, равным количеству цифр, которые составляют значение, хранящееся в ячейке А1. В нашем примере СТРОКА создаст следующий виртуальный массив: {1;2;3}

3. Функция ПСТР возвращает часть текстовой строки. Функция ПСТР имеет три аргумента: (1) текст; в нашем примере содержимое ячейки А1, 409;
(2) начальная позиция; в нашем примере – массив {1;2;3}, то есть в первом заходе будет использовано значение 1, во втором – 2, в третьем – 3;
(3) количество извлекаемых символов; в нашем примере, 1.
В нашем примере функция ПСТР выглядит так: {=ПСТР(409;{1;2;3};1)}. Функция создаст массив из трех элементов: {4;0;9}.

4. К сожалению, функция ПСТР возвращает массив строк, которые содержат текст. Чтобы преобразовать строку, которая выглядит как число, в соответствующее число, следует умножить ее на единицу (что и было сделано). Можно также воспользоваться функцией ЗНАЧЕН, которая преобразует текстовую строку, содержащую число, в соответствующее значение: {=СУММ(ЗНАЧЕН(ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1)))}

5. И, наконец, функция СУММ суммирует элементы массива {4;0;9}: {=СУММ({4;0;9})}. Эта формула возвращает значение 13.

Вы также можете «встать» в ячейку В1 и пройти по меню Формулы → Зависимости формул → Вычислить формулу. В открывшемся окне, нажимая последовательно на «Вычислить», вы будете видеть, как работает эта формула шаг за шагом:

Заметьте, что формула не работает с отрицательными числами, поскольку знак «минус» не является числом. В следующей формуле эта проблема решается с помощью функции ABS, которая возвращает модуль аргумента:
{=СУММ(ЗНАЧЕН(ПСТР(ABS(E6);СТРОКА(ДВССЫЛ("1:"&ДЛСТР(ABS(E6))));1)))}

Если у вас есть ячейка, содержащая значение, и теперь вы хотите сложить все цифры ячейки. Например, если у вас есть значение 12345 в ячейке, вы хотите выполнить следующий расчет: 1 + 2 + 3 + 4 + 5 и получить значение 15. Есть ли какие-нибудь хорошие способы суммировать все цифры числа в Excel?


Суммируйте все цифры числа в ячейке с формулами

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

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

=SUMPRODUCT(1*MID(A2,ROW(INDIRECT(“1:”&LEN(A2))),1))
=SUM(INDEX(1*(MID(A2,ROW(INDIRECT(“1:”&LEN(A2))),1)),,))

2, Затем нажмите Enter Нажмите клавишу, чтобы вернуть результат, и выберите ячейку C2, затем перетащите дескриптор заполнения в диапазон, который вы хотите применить к этой формуле, и вы получите суммирование цифр каждого номера ячейки, Смотрите скриншот:

Заметки:

  • В приведенных выше формулах A2 – это ячейка, содержащая число, цифры которого вы хотите просуммировать.
  • Если в числе есть знак минуса или десятичная точка, формулы возвращают # ЗНАЧ! ошибка.

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

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

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

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

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

 Function SumDigits(Number As String) As Integer
'Updateby Extendoffice
Dim x As Integer, C As String
For x = 1 To Len(Number)
C = Mid(Number, x, 1)
If IsNumeric(C) Then SumDigits = SumDigits + C
Next
End Function

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


Суммируйте все цифры числа в ячейке с помощью простой функции

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

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

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

1. Щелкните пустую ячейку, в которую вы хотите вывести результат.

2. Затем нажмите Кутулс > Формула Помощник > Формула Помощник, см. снимок экрана:

3. В Помощник по формулам диалоговом окне выполните следующие операции:

  • Выберите Математики из файла Формула Тип раскрывающийся список;
  • Затем выберите Суммировать числа в ячейке из Выберите изула список;
  • В правой Ввод аргументов раздел, выберите ячейку, в которой вы хотите суммировать цифры.

4. Затем нажмите Ok и перетащите маркер заполнения к ячейкам, в которых вы хотите просуммировать цифры в ячейках. И все цифры в каждой ячейке были добавлены вместе, см. Снимок экрана:

Скачать и бесплатную пробную версию Kutools for Excel Сейчас !


Больше относительных статей:

  • Сумма диагонали диапазона в Excel
  • Когда вы выполняете арифметические вычисления, вам может потребоваться суммировать числа в таблице по диагонали. Фактически, вы также можете суммировать диагональные числа в Excel, что не требует суммирования чисел одно за другим. Если вы хотите узнать больше об этом вопросе, прочтите следующую статью.
  • Объедините повторяющиеся строки и просуммируйте значения
  • В Excel , вы всегда можете столкнуться с этой проблемой, если у вас есть диапазон данных, содержащий несколько повторяющихся записей, и теперь вы хотите объединить повторяющиеся данные и суммировать соответствующие значения в другом столбце, как показано на следующих снимках экрана. Как бы вы могли решить эту проблему?
  • Сумма на основе критериев столбца и строки
  • У меня есть диапазон данных, который содержит заголовки строк и столбцов, теперь я хочу взять сумму ячеек, которые соответствуют критериям заголовков столбцов и строк. Например, для суммирования ячеек критерием столбца является Том, а критерием строки – февраль, как показано на следующем снимке экрана. В этой статье я расскажу о некоторых полезных формулах для ее решения.
  • Суммировать числа от 1 до N в Excel
  • Для большинства пользователей Excel иногда необходимо удалить первые n символов из начала текстовых строк или удалить последние x символов из конца текстовых строк, как показано ниже. В этой статье я расскажу о некоторых полезных приемах для быстрого и простого решения этой задачи в Excel.

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

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