Умножение в Excel: формулы для чисел, ячеек и массивов с примерами

Введение: зачем нужны формулы умножения в Excel

Microsoft Excel давно перестал быть просто "электронной таблицей" — сегодня это мощный инструмент для расчётов, анализа данных и автоматизации бизнес-процессов. Умножение здесь лежит в основе 80% финансовых моделей, от простого расчёта стоимости товара (цена × количество) до сложных прогнозов с учётом инфляции и сезонных коэффициентов. Но даже опытные пользователи часто сталкиваются с ошибками при работе с формулами — особенно когда речь идёт о динамических массивах или трехмерных ссылках.

В этой статье мы разберём не только базовые способы умножения (через знак * или функцию ПРОИЗВЕД), но и редкие приёмы: как перемножить целые столбцы без протягивания формулы, почему Excel иногда возвращает #ЗНАЧ! вместо результата, и как ускорить вычисления в таблицах с миллионом строк. Особое внимание уделим скрытым ловушкам при умножении дат и текста — эти ошибки встречаются в 1 из 5 финансовых отчётов.

1. Базовые формулы умножения: от чисел до ссылок на ячейки

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

Примеры базовых формул:

  • 🔢 Умножение чисел: =5*3 → вернёт 15
  • 📊 Умножение ячейки на число: =A1*10 (если в A1 значение 2, результат — 20)
  • 🔗 Умножение двух ячеек: =A1*B1 (перемножит значения из A1 и B1)
  • 📈 Умножение с абсолютной ссылкой: =A1*$B$1 (при копировании формулы B1 останется фиксированной)

Обратите внимание на пrioritet операций: умножение выполняется до сложения/вычитания. Например, формула =5+3*2 вернёт 11 (сначала 3*2=6, затем 5+6), а не 16. Чтобы изменить порядок, используйте скобки: =(5+3)*2.

⚠️ Внимание: Если в ячейке отображается ###### вместо результата, это не ошибка — просто расширьте столбец. Excel не может показать число, которое не помещается в текущую ширину ячейки.
📊 Как часто вы используете умножение в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

2. Функция ПРОИЗВЕД: когда она лучше оператора *

Функция ПРОИЗВЕД (или PRODUCT в английской версии) кажется избыточной — ведь можно просто использовать *. Однако у неё есть 3 ключевых преимущества:

  1. Умножение более 255 аргументов: оператор * ограничен 255 операндами, а ПРОИЗВЕД может обработать до 8192 чисел за один вызов.
  2. Игнорирование текста: если в диапазоне есть текстовые ячейки, ПРОИЗВЕД проигнорирует их, тогда как * вернёт ошибку #ЗНАЧ!.
  3. Удобство для динамических массивов: функция легче интегрируется с Power Query и Power Pivot.

Синтаксис функции:

=ПРОИЗВЕД(число1; [число2]; ...)

=ПРОИЗВЕД(A1:A10) // Перемножит все числа в диапазоне A1:A10

Пример использования для расчёта совокупного роста (например, индекса инфляции за 3 года):

=ПРОИЗВЕД(1+A1; 1+B1; 1+C1)-1

// Если в A1=0.05 (5%), B1=0.03 (3%), C1=0.02 (2%), результат — 10.31%

3. Умножение столбцов и строк: диапазоны и массивы

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

  • 📋 Автозаполнение двойным кликом: введите формулу в первую ячейку (например, =A1*B1), наведите курсор на правый нижний угол ячейки (появится чёрный крестик) и дважды кликните. Excel автоматически растянет формулу до последней заполненной строки.
  • 🔄 Формулы массива (для Excel 365 и 2019): =A1:A10*B1:B10 — перемножит попарно все ячейки диапазонов. В старых версиях нужно подтверждать формулу массива сочетанием Ctrl+Shift+Enter.
  • 📊 Функция СУММПРОИЗВ: =СУММПРОИЗВ(A1:A10; B1:B10) — не только перемножит, но и сложит результаты. Полезно для взвешенных средних или расчёта итоговой стоимости.

Пример с СУММПРОИЗВ для расчёта общей выручки:

ТоварЦена (руб)Количество
Ноутбук450003
Монитор120005
Клавиатура250010

Формула: =СУММПРОИЗВ(B2:B4; C2:C4) → вернёт 202600 (45000×3 + 12000×5 + 2500×10).

⚠️ Внимание: В Excel 2016 и старше СУММПРОИЗВ работает быстрее, чем комбинация СУММ + ПРОИЗВЕД, особенно для диапазонов более 1000 строк. Это связано с оптимизацией обработки массивов в новых версиях.

4. Умножение с условиями: функции ЕСЛИ и УМНОЖИТЬ

Часто умножение нужно выполнять только при соблюдении определённых условий. Например, рассчитать бонус сотрудникам, чьи продажи превысили план, или применить скидку к товарам определённой категории. Для этого комбинируют ЕСЛИ (или IF) с умножением.

Базовый синтаксис:

=ЕСЛИ(условие; значение_если_истина; значение_если_ложь)

=ЕСЛИ(A1>100; A1*0.9; A1) // Применит скидку 10% если цена > 100 руб

Для более сложных условий используйте вложенные ЕСЛИ или функцию УМНОЖИТЬ (доступна в Excel 365 и 2019):

=УМНОЖИТЬ(A1; ЕСЛИ(B1="Да"; 1.1; 1))

// Увеличит A1 на 10% только если в B1 стоит "Да"

Пример расчёта премии с учётом стажа и выполнения плана:

=ЕСЛИ(И(C2>100%; D2>5);

B2*15%;

ЕСЛИ(C2>100%; B2*10%; 0))

// Если план выполнен (>100%) И стаж >5 лет → 15% премии

// Если только план выполнен → 10%

// Иначе — 0

1. Убедитесь, что все скобки закрыты (каждой открывающей "(" должна соответствовать закрывающая ")").

2. Проверьте типы данных: текстовые значения (например, "Да"/"Нет") должны быть в кавычках.

3. Используйте Ctrl+Shift+Enter для формул массива в Excel 2016 и старше.

4. Тестируйте формулу на крайних случаях (нулевые значения, пустые ячейки).-->

5. Распространённые ошибки и их решения

Даже простые формулы умножения могут возвращать ошибки. Разберём самые частые:

ОшибкаПричинаРешение
#ЗНАЧ!Текст в ячейке, которую пытаетесь умножитьИспользуйте ЕСЛИОШИБКА или ПРОИЗВЕД, который игнорирует текст
#ДЕЛ/0!Деление на ноль в составе формулы (например, =A1/(B1-1) при B1=1)Добавьте проверку: =ЕСЛИ(B1-1=0; 0; A1/(B1-1))
#ИМЯ?Опечатка в имени функции или диапазонаПроверьте регистр (Excel не чувствителен к нему в именах функций, но чувствителен в именованных диапазонах)
#ЧИСЛО!Слишком большое/малое число (выход за пределы ±1.79E+308)Разбейте расчёт на этапы или используйте логарифмы

Особого внимания заслуживает ошибка #ЗНАЧ! при умножении дат. Excel хранит даты как числа (количество дней с 1 января 1900 года), но если ячейка отформатирована как дата, формула =A1*2 может вернуть неожиданный результат. Например, 01.01.2023 * 2 даст 45266 (а не 02.01.2023!). Чтобы правильно работать с датами, используйте функции ДАТА, ДАТАМЕС или РАЗНДАТ.

Почему Excel показывает ###### вместо результата?

Это не ошибка, а признак того, что ширина столбца недостаточна для отображения числа. Расширьте столбец двойным кликом по правой границе его заголовка или используйте автоподбор ширины (Главная → Формат → Автоподбор ширины столбца).

6. Продвинутые техники: умножение в Power Query и VBA

Для обработки больших объёмов данных (миллионы строк) или автоматизации рутинных расчётов стандартные формулы Excel могут быть недостаточно эффективными. В таких случаях используют:

  • 🔧 Power Query: инструмент ETL (Extract-Transform-Load), позволяющий умножать столбцы на этапе загрузки данных. Например, чтобы добавить столбец с наценкой 20%:
  • // В редакторе Power Query:
    

    = Table.AddColumn(#"Предыдущий шаг", "Цена с наценкой", each [Цена] * 1.2)

  • 🤖 VBA-макросы: для создания пользовательских функций. Например, функция умножения с логгированием:
  • Function LogMultiply(a As Double, b As Double) As Double
    

    LogMultiply = a * b

    Debug.Print "Умножено: " & a & " × " & b & " = " & LogMultiply

    End Function

  • 📈 Динамические массивы (Excel 365): позволяют возвращать несколько результатов в одну ячейку. Например, умножение матриц:
  • =ММУЛЬТ(A1:B2; D1:E2)  // Перемножит две матрицы 2×2

Преимущество Power Query перед формулами — отсутствие ограничений на размер данных. Если ваша таблица занимает 10 ГБ, Excel просто не откроет её, а Power Query обработает часть данных в фоновом режиме. Для умножения столбцов в Power Query:

  1. Выделите столбец с данными.
  2. Перейдите на вкладку Добавить столбецНастраиваемый столбец.
  3. Введите формулу вида [Столбец1] * [Столбец2].
  4. Нажмите OK и загрузите данные обратно в Excel.

7. Оптимизация производительности: как ускорить умножение в больших таблицах

Если ваша таблица содержит более 100 000 строк с формулами умножения, Excel может начать "тормозить". Вот 5 способов ускорить вычисления:

  1. Замените формулы на значения: после расчёта скопируйте ячейки с формулами и вставьте как значения (Правая кнопка → Специальная вставка → Значения).
  2. Используйте helper-столбцы: вместо сложной формулы в одной ячейке разбейте её на несколько промежуточных столбцов.
  3. Отключите автоматический пересчёт: перейдите в Формулы → Параметры вычислений → Вручную. Не забудьте включить обратно перед финальным расчётом!
  4. Избегайте летучих функций: СЕГОДНЯ(), СЛЧИС() или ЯЧЕЙКА() заставляют Excel пересчитывать формулы при каждом изменении листа.
  5. Применяйте таблицы Excel (не путать с диапазонами!): они оптимизированы для работы с большими данными. Преобразуйте диапазон в таблицу через Ctrl+T.

Тест производительности на таблице с 500 000 строк показал, что замена СУММПРОИЗВ на комбинацию СУММ + ПРОИЗВЕД в helper-столбцах ускорила пересчёт с 12 секунд до 2 секунд (на Intel i7-12700K с 32 ГБ ОЗУ).

FAQ: Ответы на частые вопросы

Можно ли умножить текст в Excel?

Нет, оператор * работает только с числами. Однако можно конкатенировать (объединять) текст с помощью &. Например: =A1 & " × " & B1 вернёт строку вида "10 × 5".

Почему Excel умножает даты как числа?

Потому что внутренне даты хранятся как количество дней с 1.01.1900. Чтобы получить корректный результат (например, прибавить 3 месяца к дате), используйте =ДАТАМЕС(A1; 3).

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

Время в Excel — это дробная часть дня (например, 12:00 = 0.5). Чтобы умножить 02:30 на 1.5, используйте: =ВРЕМЯ(ЧАС(A1)*1.5; МИНУТА(A1)*1.5; СЕКУНДЫ(A1)*1.5).

Можно ли умножать данные из разных книг?

Да, но нужно использовать внешние ссылки. Например: =[Книга2.xlsx]Лист1!$A$1 * B1. Обратите внимание: если внешняя книга закрыта, Excel не обновит значение до её открытия.

Как защитить формулы умножения от изменений?

Выделите ячейки с формулами, перейдите в Главная → Формат → Защита ячейки (снимите галочку), затем защитите лист (Рецензирование → Защитить лист). Теперь пользователи смогут изменять только разблокированные ячейки.