Microsoft Excel — это не просто табличный редактор, а мощный инструмент для вычислений, где умножение чисел встречается едва ли не в каждой второй формуле. Но даже опытные пользователи иногда сталкиваются с неожиданностями: почему вместо результата появляется дата? Как перемножить сразу несколько столбцов? Или почему ПРОИЗВЕД выдаёт ошибку #ЗНАЧ! там, где простой знак * работает без проблем?
В этой статье мы разберём все способы умножения в Excel — от элементарных до малоизвестных трюков, которые экономят часы работы. Вы узнаете, как правильно оформлять формулы, обходить типичные ошибки и применять умножение в реальных задачах: от расчёта скидок до анализа больших данных.
Особое внимание уделим трём ключевым моментам, которые часто упускают в стандартных руководствах:
- Разница между оператором
*и функциейПРОИЗВЕД(и когда лучше использовать каждый из них). - Как заставить Excel умножать текстовые числа (например, "5 кг" на цену за килограмм).
- Скрытые возможности умножения массивов, которые заменяют десятки строк кода VBA.
Независимо от вашего уровня — новичок или продвинутый пользователь — здесь найдётся что-то новое. Начнём с азов и постепенно перейдём к техникам, которые используют 1% специалистов.
1. Базовое умножение: оператор * и его секреты
Самый простой способ перемножить числа в Excel — использовать знак * (звёздочка). Но даже здесь есть нюансы, о которых не пишут в большинстве гайдов.
Формула выглядит так:
=A1*B1
где A1 и B1 — адреса ячеек с числами. Например, если в A1 записано 10, а в B1 — 5, результат будет 50.
Что важно знать:
- 🔹 Порядок действий: Excel выполняет умножение до сложения/вычитания. В формуле
=A1+B1*C1сначала перемножаютсяB1иC1, а потом прибавляетсяA1. - 🔹 Умножение на константу: можно умножать ячейку на число напрямую:
=A1*0.15(например, для расчёта 15% налога). - 🔹 Ограничение на количество аргументов: оператор
*не имеет жёсткого лимита, но формула не должна превышать 8192 символов.
А теперь — самый распространённый подводный камень: если в ячейке отображается дата (например, 05.01.2026), а вы пытаетесь её умножить, Excel воспримет это как число (порядковый номер дня с 1900 года). Чтобы получить корректный результат, сначала преобразуйте дату в числовой формат через Формат ячеек → Числовой.
2. Функция ПРОИЗВЕД: когда она лучше оператора *
Функция ПРОИЗВЕД (или PRODUCT в английской версии) делает то же самое, что и оператор *, но с важными отличиями:
=ПРОИЗВЕД(A1;B1;C1)
или для диапазона:
=ПРОИЗВЕД(A1:A10)
Когда стоит её использовать:
- 📊 Умножение более 2-х чисел: с
ПРОИЗВЕДформула выглядит чище:=ПРОИЗВЕД(A1;B1;C1;D1)вместо=A1*B1*C1*D1. - 🔄 Динамические диапазоны: если позже вы добавите строки в таблицу, функция автоматически учтёт новые данные (при использовании структурированных ссылок).
- 🛡️ Защита от ошибок:
ПРОИЗВЕДигнорирует пустые ячейки и текст, тогда как*вернёт#ЗНАЧ!.
Пример из практики: допустим, у вас есть таблица продаж с колонками Количество, Цена и Скидка. Чтобы рассчитать итоговую сумму с учётом скидки, используйте:
=ПРОИЗВЕД(B2;C2;(1-D2))
где D2 — процент скидки (например, 0.2 для 20%).
3. Умножение столбца на столбец и другие диапазоны
Частая задача — перемножить данные из двух столбцов построчно. Например, у вас есть Цена (столбец B) и Количество (столбец C), а нужно получить Итого (столбец D). Решение простое:
=B2*C2
затем протяните формулу вниз за правый нижний угол ячейки (маркер автозаполнения).
Но что если нужно умножить весь диапазон сразу? Например, перемножить все ячейки в A1:A10 на 1.1 (увеличить на 10%). Здесь поможет массовое умножение:
- В пустой столбец (например,
B) введите 1.1. - Выделите диапазон с исходными данными (
A1:A10). - Нажмите
F2(режим редактирования), введите*B1и нажмитеCtrl+Enter.
Этот метод работает и для умножения двух диапазонов одинакового размера. Например, чтобы перемножить A1:A10 и B1:B10 построчно:
=A1:A10*B1:B10
Важно: в новых версиях Excel (365, 2021) это сработает как динамическая формула массива. В Excel 2019 и старше нужно подтверждать Ctrl+Shift+Enter.
Проверьте, что диапазоны одинакового размера
Убедитесь, что в ячейках нет текста (только числа)
Скопируйте исходные данные на случай ошибки
Используйте Ctrl+Enter для массового ввода-->
4. Умножение с условиями: ЕСЛИ, СУММПРОИЗВ и другие функции
Допустим, вам нужно умножить числа только если выполняется определённое условие. Например, рассчитать бонус для продавцов, которые выполнили план. Здесь пригодится комбинация ЕСЛИ и умножения:
=ЕСЛИ(B2>1000; B2*0.1; 0)
где B2 — сумма продаж, а 0.1 — бонус 10% для тех, кто продал больше 1000 единиц.
Для более сложных условий используйте СУММПРОИЗВ (или SUMPRODUCT). Эта функция не только умножает, но и суммирует результаты, при этом поддерживает условия. Пример:
=СУММПРОИЗВ((A2:A10="Да")*(B2:B10*C2:C10))
Здесь Excel умножает B на C только для строк, где в столбце A стоит "Да", и суммирует итоги.
Разберём реальный кейс: у вас таблица с товарами, где нужно посчитать общую стоимость только для позиций категории "Электроника":
=СУММПРОИЗВ((A2:A100="Электроника")*(B2:B100*C2:C100))
где:
A2:A100— столбец с категориями,B2:B100— цена,C2:C100— количество.
Почему СУММПРОИЗВ лучше, чем СУММ+ЕСЛИ?
Функция СУММПРОИЗВ обрабатывает массивы в памяти, поэтому работает быстрее на больших данных (10 000+ строк).
Она не требует промежуточных столбцов для расчётов, в отличие от комбинации СУММ + ЕСЛИ.
Поддерживает несколько условий одновременно без вложенных ЕСЛИ (например, =СУММПРОИЗВ((A2:A10="Да")(B2:B10="Нет")(C2:C10*D2:D10))).
5. Умножение текста и чисел: как обойти ошибки #ЗНАЧ!
Excel часто возвращает ошибку #ЗНАЧ!, если пытаться умножить текст на число. Например, в ячейке записано "5 кг", а вам нужно умножить 5 на цену за килограмм. Решение — извлечь число из текста.
Способы обработки:
- Функция ЗНАЧЕН (для чисел с разделителями):
=ЗНАЧЕН(ПОДСТАВИТЬ(A1;" кг";""))*B1где
A1содержит "5 кг", аB1— цену. - ЛЕВСИМВ + ПРАВСИМВ (если число всегда в начале/конце):
=ЛЕВСИМВ(A1;НАЙТИ(" ";A1)-1)*B1 - Регулярные выражения (Power Query): для сложных шаблонов (например, "5 ящиков x 10 кг").
Пример из жизни: у вас прайс-лист, где цены указаны как "$19.99", а нужно умножить на курс доллара. Формула:
=ЗНАЧЕН(ПОДСТАВИТЬ(A1;"$";""))*B1
Если текст содержит несколько чисел (например, "3 упаковки по 5 кг"), используйте Power Query (вкладка Данные → Из текста/CSV) или VBA-скрипт для парсинга.
6. Умножение массивов: скрытая мощь Excel
Мало кто знает, что Excel умеет умножать целые массивы данных без циклов. Это ускоряет расчёты в десятки раз. Например, у вас две таблицы одинакового размера, и нужно перемножить их построчно.
В Excel 365 и 2021 это делается просто:
=A1:B10*C1:D10
Формула вернёт массив результатов. Чтобы "поймать" его, выделите диапазон нужного размера (например, E1:F10) и нажмите Enter.
В старых версиях (2019 и ранее) используйте формулы массива:
- Выделите диапазон для результата (например,
E1:F10). - Введите формулу
=A1:B10*C1:D10. - Нажмите
Ctrl+Shift+Enter(Excel добавит фигурные скобки{...}).
Пример применения: у вас матрица продаж по регионам (строки) и продуктам (столбцы), а нужно рассчитать выручку с учётом региональных коэффициентов. Вместо сотен формул используйте одно умножение массивов!
| Метод | Пример формулы | Подходит для версий | Ограничения |
|---|---|---|---|
Оператор * |
=A1*B1 |
Все | Неудобно для >2 аргументов |
ПРОИЗВЕД |
=ПРОИЗВЕД(A1:A10) |
Все | Игнорирует текст и пустые ячейки |
| Умножение массивов | =A1:B10*C1:D10 |
365, 2021 (или Ctrl+Shift+Enter в старых) |
Требует одинаковых размеров диапазонов |
СУММПРОИЗВ с условиями |
=СУММПРОИЗВ((A1:A10="Да")*B1:B10) |
Все | Не поддерживает текстовые условия напрямую |
7. Типичные ошибки и как их исправить
Даже в простых формулах умножения Excel может выдавать ошибки. Разберём самые частые и их решения:
Ошибка #ЗНАЧ!:
- 🔍 Причина: в ячейке текст вместо числа (например, "N/A" или пробел).
- 🛠 Решение: используйте
ЕЧИСЛОдля проверки:=ЕСЛИ(ЕЧИСЛО(A1);A1*B1;"Ошибка").
Ошибка #ДЕЛ/0!:
- 🔍 Причина: умножение на пустую ячейку (Excel воспринимает её как 0).
- 🛠 Решение: замените пустые ячейки на 1:
=ПРОИЗВЕД(ЕСЛИ(A1:A10="";1;A1:A10)).
Неправильный результат (даты вместо чисел):
- 🔍 Причина: Excel интерпретирует числа как даты (например,
1.05становится1 мая). - 🛠 Решение: измените формат ячейки на
ОбщийилиЧисловой.
Формула не тянется при автозаполнении:
- 🔍 Причина: использованы абсолютные ссылки (например,
$A$1). - 🛠 Решение: замените на относительные (
A1) или смешанные ($A1).
Если ошибка остаётся, проверьте:
⚠️ Внимание: В настройках Excel (Файл → Параметры → Формулы) должен быть включён параметрАвтоматический пересчёт. Если стоитВручную, формулы не обновляются без нажатияF9.
8. Продвинутые техники: умножение с Power Query и VBA
Для обработки больших данных (100 000+ строк) или сложных правил умножения стандартных функций Excel может не хватить. Здесь на помощь приходят Power Query и VBA.
Power Query (доступен в Excel 2016+):
- Импортируйте данные через
Данные → Получение данных → Из таблицы/диапазона. - В редакторе Power Query добавьте столбец с формулой. Например, чтобы умножить столбцы
PriceиQuantity:= [Price] * [Quantity] - Примените изменения и загрузите данные обратно в Excel.
VBA (для автоматизации):
Скрипт для умножения всех чисел в выделенном диапазоне на заданное значение:
Sub MultiplySelection()
Dim rng As Range
Dim cell As Range
Dim multiplier As Double
multiplier = InputBox("Введите множитель:", "Умножение", 1)
For Each cell In Selection
If IsNumeric(cell.Value) Then
cell.Value = cell.Value * multiplier
End If
Next cell
End Sub
Чтобы использовать:
- Нажмите
Alt+F11для открытия редактора VBA. - Вставьте код в новый модуль (
Insert → Module). - Выделите диапазон в Excel и запустите макрос (
F5).
⚠️ Внимание: Макросы могут содержать вирусы. Никогда не запускайте VBA-код из ненадёжных источников. Перед использованием сохраните файл с расширением .xlsm (с поддержкой макросов).
FAQ: Ответы на частые вопросы
Можно ли умножить время на число? Например, 2:30:00 × 1.5.
Да, но результат будет в формате времени или числа (в зависимости от формата ячейки). Excel хранит время как дробь (например, 2:30:00 = 0.104167). Чтобы получить часы и минуты, используйте:
=ТЕКСТ(A1*1.5; "[ч]:мм")
где A1 содержит исходное время.
Почему =A1*B1 выдаёт 0, если в ячейках есть числа?
Скорее всего, числа отформатированы как текст. Проверьте:
- Выделите ячейки и посмотрите на строку формул — если слева есть зелёный треугольник, это текст.
- Используйте
=ЗНАЧЕН(A1)*ЗНАЧЕН(B1)или преобразуйте формат черезТекст по столбцам(вкладкаДанные).
Как умножить каждый n-й элемент в столбце? Например, каждую 3-ю строку.
Используйте ЕСЛИ с проверкой остатка от деления:
=ЕСЛИ(ОСТАТ(СТРОКА(A1);3)=0; A1*2; A1)
Здесь каждая 3-я строка умножается на 2, остальные остаются без изменений.
Можно ли умножить данные из разных книг Excel?
Да, но нужно указать полный путь. Например:
=[Книга2.xlsx]Лист1!$A$1 * B1
Важно:
- Обе книги должны быть открыты при первом вводе формулы.
- При перемещении файла ссылка разорвётся (используйте абсолютные пути).
Как умножить все числа в таблице на одно значение без формул?
Способы:
- Специальная вставка:
- В пустой ячейке введите множитель (например, 1.1).
- Скопируйте её (
Ctrl+C). - Выделите диапазон для умножения, кликните правой кнопкой →
Специальная вставка → Умножить.
- Power Query: импортируйте таблицу, добавьте столбец с формулой умножения, загрузите обратно.