Умножение в Excel: 7 способов с формулами, примерами и лайфхаками

Введение: почему умножение в Excel — это не только знак «*»

Вы когда-нибудь пытались перемножить столбец цен на столбец количества в Excel, но получали вместо результата загадочную ошибку #ЗНАЧ!? Или тратили часы на ручное умножение строк в таблице с тысячами записей? Если да, то вы не одиноки. По статистике, 37% ошибок в финансовых отчётах связаны с некорректным использованием формул умножения — от банального пропуска знака * до сложных проблем с массивами.

В этой статье мы разберём не только базовое умножение через оператор *, но и малоизвестные приёмы: как умножать условно (только положительные числа), как перемножать динамические диапазоны без ручного обновления ссылок, и почему функция ПРОИЗВЕД иногда работает быстрее, чем СУММПРОИЗВ. А ещё — единственный способ умножить данные из закрытой книги Excel без её открытия.

Спойлер: в 90% случаев вам хватит трёх формул, но знание нюансов сэкономит часы на отладку. Начнём с самого простого — и постепенно дойдём до приёмов, которые используют аналитики в Big 4.

1. Базовое умножение: оператор * и его подводные камни

Самый очевидный способ умножить числа в Excel — использовать знак * (звёздочка). Например, формула =A2*B2 перемножит значения из ячеек A2 и B2. Но даже здесь есть нюансы, из-за которых новичок может получить неверный результат:

  • 🔹 Текст вместо чисел: Если в ячейке "10 кг" (текст), а не 10 (число), Excel вернёт #ЗНАЧ!. Проверяйте формат данных через Числовой формат → Общий.
  • 🔹 Скрытые пробелы: Ячейка может выглядеть пустой, но содержать пробел (нажмите F2, чтобы увидеть). Формула =A1*1 вернёт 0, если в A1 только пробел.
  • 🔹 Округление: Excel хранит 15 знаков после запятой, но отображает только те, что указаны в формате. Умножение 0.1*0.2 даст 0.020000000000000004 — это не ошибка, а особенность двоичной арифметики.

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

=ЕСЛИ(ЕЧИСЛО(A2); ЕСЛИ(ЕЧИСЛО(B2); A2*B2; "Ошибка в B2"); "Ошибка в A2")
⚠️ Внимание: Если вы копируете формулу умножения вниз по столбцу, а одна из ячеек содержит #ДЕЛ/0! (деление на ноль), Excel автоматически перенесёт эту ошибку во все скопированные ячейки. Используйте ЕСЛИОШИБКА для маскировки:
=ЕСЛИОШИБКА(A2*B2; 0)
📊 Как часто вы используете умножение в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

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

Функция ПРОИЗВЕД (англ. PRODUCT) умножает все переданные ей аргументы и возвращает результат. Например, =ПРОИЗВЕД(A2:D2) перемножит все ячейки в строке 2 от A до D. Почему это удобнее, чем =A2*B2*C2*D2?

КритерийОператор *Функция ПРОИЗВЕД
Длина формулыУвеличивается с каждым новым множителемФиксированная (до 255 аргументов)
Динамические диапазоныНе поддерживаетРаботает с A2:A100
Обработка пустых ячеекВернёт 0, если хоть одна ячейка пустаИгнорирует пустые ячейки
ПроизводительностьМедленнее при >10 множителейОптимизирована для больших массивов

Главное преимущество ПРОИЗВЕД — работа с динамическими диапазонами. Например, если в столбце A количество товаров, а в строке 1 — их цены, то формула =ПРОИЗВЕД(A2:A100;B1:Z1) создаст таблицу умножения автоматически. А ещё ПРОИЗВЕД можно вкладывать в другие функции:

=СУММ(ПРОИЗВЕД(A2:A10;B2:B10))  // Сумма произведений пар ячеек

Убедиться, что в диапазоне нет текста|Проверить отсутствие нулей (если они недопустимы)|Использовать абсолютные ссылки ($A$1) для фиксированных множителей|Тестировать формулу на небольшом диапазоне-->

3. Умножение с условиями: ЕСЛИ, СУММЕСЛИ и ловкие трюки

Часто нужно умножать числа только при выполнении условия. Например, посчитать выручку только по товарам с ценой > 1000 ₽. Здесь поможет комбинация ЕСЛИ и умножения:

=ЕСЛИ(B2>1000; A2*B2; 0)  // Умножаем A2 на B2, только если B2 > 1000

Но для больших таблиц лучше использовать СУММЕСЛИ (или СУММЕСЛИМН для нескольких условий):

=СУММЕСЛИ(B2:B100; ">1000"; A2:A100*B2:B100)
⚠️ Внимание: Последний аргумент в СУММЕСЛИ должен быть массивом (диапазоном). Если написать A2*B2, Excel вернёт ошибку. Для старых версий Excel (до 2019) эту формулу нужно вводить как формулу массива (Ctrl+Shift+Enter).

Для более сложных условий подойдёт СУММПРОИЗВ — она умножает элементы массивов попарно и суммирует результаты. Например, посчитать выручку только по товарам категории "Электроника" (столбец C):

=СУММПРОИЗВ(--(C2:C100="Электроника"); A2:A100; B2:B100)
Почему двойной минус "--" перед условием?

Это приём для преобразования логических значений (ИСТИНА/ЛОЖЬ) в 1 и 0. Без него Excel не сможет умножать массивы корректно.

4. Умножение столбца на столбец: 3 способа без ошибок

Классическая задача: есть столбец A с ценами и столбец B с количествами. Нужно получить столбец C с выручкой. Вариантов несколько:

  1. Ручное протягивание формулы: Введите =A2*B2 в C2, затем потяните за правый нижний угол ячейки вниз. Минус: если данные добавятся позже, формулу придётся протягивать заново.
  2. Формула массива (Excel 365): Введите в C2:
    =A2:A100*B2:B100

    Excel автоматически "прольёт" результат на весь диапазон. Плюс: динамическое обновление при добавлении строк.

  3. Power Query: Для таблиц >10 000 строк. Перейдите в Данные → Получить данные → Из таблицы/диапазона, затем добавьте настраиваемый столбец с формулой [Цена]*[Количество].

Самый надёжный способ для больших таблиц — преобразовать данные в умную таблицу (Ctrl+T), а затем использовать структурированные ссылки:

=[@Цена]*[@Количество]
⚠️ Внимание: Если в столбцах есть пустые ячейки, Excel вернёт 0 в результате умножения. Чтобы избежать этого, используйте:
=ЕСЛИ(И(A2<>""; B2<>""); A2*B2; "")

5. Умножение данных из разных книг (внешние ссылки)

Допустим, у вас есть две книги Excel: в Book1.xlsx — цены, в Book2.xlsx — количества. Чтобы умножить их, не открывая обе книги:

  1. Откройте Book2.xlsx (ту, где будет результат).
  2. Введите формулу:
    ='C:\Путь\[Book1.xlsx]Лист1'!$A$2

    (замените путь и имя листа на свои).

  3. Добавьте умножение:
    ='C:\Путь\[Book1.xlsx]Лист1'!$A$2 * B2

Важно: если Book1.xlsx закрыта, Excel покажет значение, но не обновит его при изменении исходной книги. Для принудительного обновления перейдите в Данные → Обновить все.

Единственный способ умножить данные из закрытой книги с автоматический обновлением — использовать Power Query или VBA. Например, этот макрос обновит все внешние ссылки при открытии файла:

Private Sub Workbook_Open()

ThisWorkbook.UpdateLink Name:="Book1.xlsx", Type:=xlExcelLinks

End Sub

6. Продвинутые приёмы: массивы, LAMBDA и умножение по критерию

Для опытных пользователей — техники, которые экономят часы на сложных расчётах:

  • 🔢 Умножение с несколькими условиями:
    =СУММПРОИЗВ(--(A2:A100="Категория1"); --(B2:B100>100); C2:C100; D2:D100)

    Умножает C на D только если A="Категория1" и B>100.

  • 🔢 Динамическое умножение с LAMBDA (Excel 365):
    =СКАНИРОВАТЬ(A2:A10; LAMBDA(acc; x; acc*x); 1)

    Перемножает все числа в диапазоне A2:A10 (аналог ПРОИЗВЕД, но гибче).

  • 🔢 Умножение с учётом дат:
    =СУММПРОИЗВ(--(B2:B100>=ДАТА(2023;1;1)); --(B2:B100<=ДАТА(2023;12;31)); C2:C100; D2:D100)

    Считает выручку только за 2023 год.

Для работы с большими данными (100 000+ строк) используйте Power Pivot:

  1. Добавьте данные в модель (Вставка → Таблица → Добавить в модель данных).
  2. Создайте меру с формулой на языке DAX:
    Выручка := SUMX(Таблица1; Таблица1[Цена] * Таблица1[Количество])

7. Типичные ошибки и как их исправить

Даже опытные пользователи сталкиваются с ошибками при умножении. Вот топ-5 проблем и их решения:

ОшибкаПричинаРешение
#ЗНАЧ!Текст вместо числа или несовпадение размеров массивовПроверьте формат ячеек (Числовой формат → Общий) и длины диапазонов
#ДЕЛ/0!Деление на ноль в формуле (например, =A2/B2, где B2=0)Используйте ЕСЛИОШИБКА или ЕСЛИ(B2<>0; A2/B2; 0)
#ССЫЛКА!Удален столбец или строка, на который ссылается формулаВосстановите данные или обновите ссылки в формуле
#ЧИСЛО!Слишком большое или слишком маленькое число (переполнение)Разбейте расчёт на части или используйте ЛОГ для больших чисел
Неверный результатОкругление или скрытые символы (например, неразрывный пробел)Очистите данные функцией ПЕЧСИМВ или ЗАМЕНИТЬ

Если формула работает медленно (например, СУММПРОИЗВ на 50 000 строк), попробуйте:

  • 🛠️ Заменить диапазоны на умные таблицы (структурированные ссылки работают быстрее).
  • 🛠️ Разбить большой расчёт на несколько маленьких (например, по месяцам).
  • 🛠️ Отключить Автоматический пересчёт (Формулы → Параметры вычислений → Вручную).

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

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

Да, но результат нужно отформатировать правильно. Например, =A2*24 умножит время в A2 на 24 и вернёт количество часов. Чтобы отобразить результат снова как время, примените формат [ч]:мм:сс.

Как умножить ячейку на процент?

Два варианта:

  1. Умножьте на десятичную дробь: =A2*0.2 (для 20%).
  2. Ссылка на ячейку с процентом: =A2*B2, где B2 отформатирован как процент (например, содержит 20%).
Почему Excel округляет результат умножения?

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

  1. Выделите ячейку → Главная → Увеличить разрядность (кнопка 1,23).
  2. Или примените формат Общий.

Если нужно точное умножение (например, для финансовых расчётов), используйте функцию ТОЧНОСТЬ или округлите результат явным образом: =ОКРУГЛ(A2*B2; 2).

Как умножить все листы в книге?

Создайте сводную таблицу на основе всех листов (через Power Query) или используйте VBA:

Sub MultiplyAllSheets()

Dim ws As Worksheet, rng As Range

For Each ws In ThisWorkbook.Worksheets

Set rng = ws.Range("A1").CurrentRegion

ws.Range("D1").Value = "Результат"

ws.Range("D2").Formula = "=RC[-3]*RC[-2]"

rng.Columns(4).FillDown

Next ws

End Sub

Этот макрос перемножит столбцы A и B на всех листах и запишет результат в столбец D.

Можно ли умножать данные в защищённых ячейках?

Да, если ячейки защищены от изменения, но не от чтения. Формулы будут работать, но:

  • Вы не сможете изменить формулу в защищённой ячейке.
  • Если лист защищён с паролем, для редактирования формул потребуется ввести пароль.

Чтобы разрешить изменение формул при защите листа:

  1. Перейдите в Рецензирование → Защитить лист.
  2. В окне параметров снимите галочку с Защитить содержимое защищаемых ячеек.