Сложение цифр ЧИСЛА в MS 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.

Связанные статьи

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

Комментарии

Сергей (не проверено)

Спасибо! Очень интересное решение!