Вычитание в Excel: от простых чисел до сложных формул с примерами

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

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

Особое внимание уделим динамическим формулам, которые автоматически пересчитываются при изменении исходных данных. Это избавит вас от ручного обновления таблиц и сэкономит часы рабочего времени.

1. Базовое вычитание: числа, ячейки и диапазоны

Начнём с азов: как вычесть одно число из другого или значение одной ячейки из другой. В Excel для этого используется стандартный оператор - (минус). Формула может выглядеть так:

Пример 1: Вычитание чисел напрямую в формуле:

=100-20

Результат: 80.

Пример 2: Вычитание значений из ячеек. Допустим, в A1 записано 150, а в B130. Формула будет:

=A1-B1

Результат: 120.

Если нужно вычесть целый диапазон из одного числа, используйте функцию СУММ:

=1000-СУММ(A1:A5)

Эта формула вычтет сумму всех чисел из диапазона A1:A5 из 1000.

⚠️ Внимание: Если в ячейках, участвующих в вычитании, хранятся текстовые значения (например, "Итого"), Excel вернёт ошибку #ЗНАЧ!. Проверьте формат ячеек через Главная → Формат → Формат ячеек.

  • 📌 Совет: Используйте $ для фиксации ячеек (например, $A$1), если хотите "закрепить" вычитаемое значение при копировании формулы.
  • 🔄 Динамика: Если вычитаемое значение меняется часто, лучше разместить его в отдельной ячейке и ссылаться на неё в формуле.
  • Быстрый ввод: Наберите =, затем кликните по первой ячейке, введите - и кликните по второй.

2. Вычитание процентов: 3 рабочих метода

Вычитание процентов — частая задача при расчёте скидок, налогов или изменений в данных. Рассмотрим три способа:

Метод 1. Вычитание фиксированного процента

Допустим, у вас в A1 цена 5000, а в B1 скидка 15%. Формула:

=A1-(A1*B1%)

Или короче:

=A1*(1-B1%)

Результат: 4250 (5000 минус 15%).

Метод 2. Вычитание процента от суммы диапазона

Если нужно вычесть 10% от суммы чисел в A1:A10:

=СУММ(A1:A10)*90%

или

=СУММ(A1:A10)-(СУММ(A1:A10)*10%)

Метод 3. Условное вычитание процентов

Допустим, скидка 20% применяется только если сумма в A1 больше 10000:

=ЕСЛИ(A1>10000; A1*80%; A1)
📊 Какой метод вычитания процентов вы используете чаще?
Фиксированный процент
Процент от суммы
Условное вычитание
Не вычитаю проценты

⚠️ Внимание: Если в ячейке с процентом указано число 15 вместо 15%, Excel воспримет его как 1500%! Всегда проверяйте формат ячейки (должен быть Процентный).

3. Вычитание дат и времени: нюансы формата

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

Пример 1. Разница в днях

Если в A1 дата 15.05.2026, а в B110.05.2026, формула:

=A1-B1

вернёт 5 (дней). Убедитесь, что ячейка с результатом имеет формат Общий или Числовой.

Пример 2. Разница в годах

Для вычитания лет используйте функцию РАЗНДАТ (в английской версии DATEDIF):

=РАЗНДАТ(B1; A1; "Y")

где B1 — более ранняя дата, A1 — поздняя.

Пример 3. Вычитание времени

Если в A1 время 14:30, а в B112:45, формула:

=A1-B1

вернёт 1:45 (1 час 45 минут). Формат ячейки с результатом должен быть Время.

Формат данных Формула Результат Формат ячейки результата
Дата =A1-B1 5 Общий
Время =A1-B1 1:45:00 Время
Дата и время =A1-B1 2,15:30 (2 дня 15 часов) [ч]:мм (пользовательский)

⚠️ Внимание: Если при вычитании дат вы получаете странное большое число (например, 45389), проверьте формат ячеек с исходными данными — они должны быть Дата, а не Текст.

4. Вычитание с условиями: функции ЕСЛИ и СУММЕСЛИ

Иногда вычитание нужно выполнять только при соблюдении определённых условий. Для этого используйте функции ЕСЛИ и СУММЕСЛИ.

Пример 1. Условное вычитание

Допустим, из значения в A1 нужно вычесть 100, но только если A1 > 500:

=ЕСЛИ(A1>500; A1-100; A1)

Пример 2. Вычитание суммы по критерию

Если в таблице есть столбец с категориями (B1:B10) и столбец с суммами (C1:C10), и нужно вычесть сумму только для категории "Офис":

=СУММ(C1:C10)-СУММЕСЛИ(B1:B10; "Офис"; C1:C10)

Пример 3. Множественные условия

Вычесть 50 из A1, если A1 > 200 и B1 = "Да":

=ЕСЛИ(И(A1>200; B1="Да"); A1-50; A1)
  • 🔍 Проверка: Всегда тестируйте формулы с условиями на крайних значениях (например, когда условие почти выполняется или не выполняется).
  • 📊 Альтернатива: Для сложных условий используйте СУММЕСЛИМН (аналог СУММЕСЛИ с несколькими критериями).
  • 🔄 Динамика: Если условия меняются часто, вынесите их в отдельные ячейки и ссылайтесь на них в формуле.

1. Убедиться, что все ячейки с условиями имеют правильный формат (текст/число/дата)

2. Проверить логику условия (И/ИЛИ)

3. Протестировать формулу на граничных значениях

4. Зафиксировать абсолютные ссылки ($) если нужно копировать формулу-->

5. Вычитание между листами и книгами

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

Пример 1. Вычитание с другого листа

Допустим, на Лист1 в A1 значение 200, а на Лист2 в B250. Формула на Лист1:

=A1-Лист2!B2

Пример 2. Вычитание из закрытой книги

Если книга Отчёт.xlsx закрыта, но путь к ней известен:

='C:\Путь\[Отчёт.xlsx]Лист1'!A1-B1
Важно: при изменении пути к файлу ссылка обновится только после открытия книги-источника.

Пример 3. Вычитание диапазонов с разных листов

Сумма диапазона A1:A10 на Лист1 минус сумма B1:B10 на Лист2:

=СУММ(Лист1!A1:A10)-СУММ(Лист2!B1:B10)

⚠️ Внимание: При переименовании листа или книги все ссылки на неё в формулах автоматически обновляются. Если вы переместили файл в другую папку, ссылки разорвутся — их придётся исправлять вручную.

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

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

  • 🚨 #ЗНАЧ! — одна из ячеек содержит текст вместо числа. Решение: Проверьте формат ячеек или используйте ЕЧИСЛО для фильтрации:
    =ЕСЛИ(ЕЧИСЛО(A1); A1-B1; "Ошибка: не число")
  • 🚨 #ДЕЛ/0! — попытка вычесть из пустой ячейки. Решение: Используйте ЕПУСТО:
    =ЕСЛИ(ЕПУСТО(A1); 0; A1-B1)
  • 🚨 #ССЫЛКА! — удалён лист или ячейка, на которую ссылается формула. Решение: Обновите ссылки или восстановите удалённые данные.
  • 🚨 Неправильный результат (например, ######) — ячейка с результатом слишком узкая или формат неверный. Решение: Расширьте столбец или измените формат на Общий.

Если формула возвращает неожиданное число, проверьте:

  1. Формат ячеек (например, дата вместо числа).
  2. Скрытые символы (пробелы, неразрывные пробелы). Используйте СЖПРОБЕЛЫ:
    =СЖПРОБЕЛЫ(A1)-B1
  3. Порядок операций. Excel выполняет умножение/деление до сложения/вычитания. Используйте скобки:
    =(A1+B1)-C1
Почему Excel показывает дату вместо результата вычитания?

Если вы вычитаете два числа, но ячейка с результатом имеет формат Дата, Excel интерпретирует число как количество дней. Например, 1 станет 01.01.1900. Решение: измените формат ячейки на Общий или Числовой.

7. Продвинутые техники: массивы и Power Query

Для сложных задач стандартных формул может быть недостаточно. Рассмотрим два продвинутых подхода:

Техника 1. Вычитание с использованием формул массива

Допустим, нужно вычесть из каждого элемента диапазона A1:A5 соответствующее значение из B1:B5 и найти максимальную разницу:

=МАКС(A1:A5-B1:B5)
Важно: В старых версиях Excel (до 2019) такую формулу нужно вводить как Ctrl+Shift+Enter.

Техника 2. Вычитание в Power Query

Если данные импортированы через Данные → Получить данные, вычитание можно сделать на этапе преобразования:

  1. Выделите столбец, из которого нужно вычесть.
  2. Перейдите на вкладку Добавить столбецВычесть.
  3. Укажите второй столбец и подтвердите.
Плюс: Все изменения будут автоматически применены при обновлении данных.

Техника 3. Вычитание с помощью VBA

Для автоматизации рутинных операций можно написать макрос. Например, этот код вычитает 10 из всех ячеек выделенного диапазона:

Sub SubtractTen()

For Each cell In Selection

cell.Value = cell.Value - 10

Next cell

End Sub

Как использовать: Нажмите Alt+F11, вставьте код в модуль и запустите макрос.

⚠️ Внимание: Формулы массива и Power Query могут значительно замедлить работу книги при больших объёмах данных. Оптимизируйте таблицы или используйте Значения вместо формул там, где это возможно.

FAQ: Частые вопросы о вычитании в Excel

Как вычесть одно и то же число из всего столбца?

Поместите вычитаемое число в отдельную ячейку (например, B1). В первой ячейке столбца с результатом введите формулу =A1-$B$1 и протяните её вниз. Символ $ фиксирует ссылку на B1, чтобы она не менялась при копировании.

Почему после вычитания получается отрицательное число в скобках: (100)?

Это означает, что ячейка имеет Бухгалтерский формат. Чтобы отобразить число без скобок, измените формат на Числовой или Общий через Главная → Формат → Формат ячеек.

Можно ли вычесть текстовые значения?

Нет, Excel не поддерживает арифметические операции с текстом. Однако можно использовать функции для работы с текстом, например, ПСТР для "вычитания" подстрок:

=ПСТР(A1; 1; ДЛСТР(A1)-3)

Эта формула "уберёт" последние 3 символа из текста в A1.

Как вычесть время с учётом ночных смен (например, 23:00 - 1:00)?

Используйте формулу с учётом пересечения полуночи:

=ЕСЛИ(B1

где A1 — время конца смены (1:00), а B1 — время начала (23:00). Формат ячейки с результатом должен быть [ч]:мм.

Почему при вычитании процентов результат не совпадает с калькулятором?

Проверьте два момента:

  1. Формат ячейки с процентом: если там записано 15 вместо 15%, Excel воспримет это как 1500%.
  2. Порядок операций: формула =A1-20% вычтет 0.2 (20%) от A1, а не 20% от A1. Правильный вариант: =A1*(1-20%).