Как вычитать числа в Excel: формулы, примеры и лайфхаки

Введение: зачем учиться вычитать в Excel

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

Эта статья не просто расскажет, как вычитать числа в Excel — она раскроет все подводные камни, с которыми вы можете столкнуться. Мы разберём базовые формулы, работу с ячейками, вычитание времени и процентов, а также покажем, как автоматизировать расчёты для больших таблиц. Даже если вы новичок, после прочтения сможете уверенно работать с любыми числовыми данными.

Базовые формулы вычитания в Excel

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

=10-5

Но чаще всего вычитание выполняется между ячейками. Допустим, у вас в A1 записана выручка за месяц, а в B1 — расходы. Чтобы посчитать прибыль, используйте:

=A1-B1

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

=A1-B1-C1-D1
  • 📌 Статическое вычитание: используйте, если числа фиксированные (например, =100-20).
  • 🔄 Динамическое вычитание: ссылайтесь на ячейки (например, =A1-B1), чтобы формула автоматически пересчитывалась при изменении данных.
  • 🔢 Вычитание константы: если нужно отнять одно и то же число от нескольких ячеек, зафиксируйте его знаком $ (например, =A1-$B$1).

Вычитание с использованием функций

Помимо простого знака -, в Excel есть функции, которые упрощают вычитание в сложных сценариях. Например, функция СУММ может использоваться для вычитания, если одно из чисел взять с отрицательным знаком:

=СУММ(A1;-B1)

Но гораздо полезнее функция РАЗНДАТ (или DATEDIF в английской версии), которая вычитает даты и возвращает разницу в днях, месяцах или годах. Например, чтобы узнать, сколько дней прошло между двумя датами:

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

Для вычитания процентов удобно использовать комбинацию функций. Допустим, вам нужно уменьшить число в A1 на 15%:

=A1-(A1*15%)

Или короче:

=A1*(1-15%)
Функция Пример Результат
СУММ с отрицательным числом =СУММ(100;-20) 80
РАЗНДАТ (разница в днях) =РАЗНДАТ("10.05.2026";"01.05.2026";"d") 9
Вычитание процентов =100*(1-10%) 90
АБС (модуль разницы) =АБС(A1-B1) Всегда положительное число
📊 Как часто вы используете функции для вычитания в Excel?
Постоянно
Иногда
Редеко
Никогда

Вычитание времени и дат

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

=B1-A1

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

Для вычитания времени (например, чтобы узнать продолжительность задачи) используйте тот же принцип:

=Время_окончания - Время_начала

Но тут важно, чтобы ячейки имели формат Время. Если результат отображается как ######, расширьте столбец — это означает, что ячейка слишком узкая для отображения времени.

⚠️ Внимание: Если при вычитании дат вы получаете отрицательное число, проверьте порядок ячеек. Excel не поддерживает отрицательные даты в стандартном формате.
  • 📅 Разница в годах: =РАЗНДАТ(A1;B1;"y")
  • 📆 Разница в месяцах: =РАЗНДАТ(A1;B1;"m")
  • Разница во времени: =B1-A1 (ячейки в формате Время)
  • 🔄 Автоматическое обновление: Если даты в ячейках меняются, формула пересчитается сама.
Почему Excel показывает ###### вместо результата?

Это означает, что столбец слишком узкий для отображения данных. Расширьте его или измените формат ячейки на Общий, чтобы увидеть числовое значение разницы.

Вычитание процентов: нюансы и ошибки

Вычитание процентов — одна из самых частых задач в финансовых расчётах. Например, вам нужно уменьшить цену товара на 20% или посчитать скидку. Здесь многие допускают ошибку, просто вычитая проценты как числа:

=100-20%  

Правильный способ — умножить исходное число на (100% - скидка%):

=100*(1-20%)  

Если процент хранится в отдельной ячейке (например, B1=20%), используйте:

=A1*(1-B1)
⚠️ Внимание: Если в ячейке с процентом отображается число (например, 20 вместо 20%), но формат установлен как Процентный, Excel автоматически делит его на 100. Чтобы избежать путаницы, всегда проверяйте формат данных.
  • 💰 Расчёт скидки: =Цена*(1-Скидка%)
  • 📈 Уменьшение на процент: =A1-A1*B1 (где B1 — процент в десятичном виде, например, 0,2 для 20%)
  • 🔄 Динамический процент: Если процент меняется, ссылайтесь на ячейку, а не вводите число напрямую.

Убедитесь, что ячейка с процентом имеет формат Процентный

Проверьте, что в формуле используется умножение, а не просто вычитание

Если процент вводится вручную, не забудьте знак %

Тестируйте формулу на крайних значениях (0%, 100%)-->

Вычитание с условиями (функция ЕСЛИ)

Иногда вычитание нужно выполнять только при соблюдении определённого условия. Например, вычесть бонус из зарплаты, только если он превышает 1000 рублей. Для этого используйте функцию ЕСЛИ:

=ЕСЛИ(B1>1000; A1-B1; A1)

Здесь: A1 — зарплата, B1 — бонус.

Формула вычитает бонус только если он больше 1000.

Можно комбинировать ЕСЛИ с другими функциями. Например, вычесть процент, только если продажи превысили план:

=ЕСЛИ(A1>B1; A1*(1-10%); A1)

Где: A1 — фактические продажи, B1 — план продаж.

Для более сложных условий используйте ЕСЛИМН (или IFS в английской версии), которая позволяет проверять несколько условий подряд:

=ЕСЛИМН(

A1>1000; A1-10%;

A1>500; A1-5%;

ИСТИНА; A1

)

⚠️ Внимание: Вложенные функции ЕСЛИ (более 3-4 уровней) сложно читать и отлаживать. В таких случаях лучше использовать ЕСЛИМН или вынести логику в отдельные столбцы.

Вычитание в массивах и таблицах

Если вам нужно вычесть данные из двух столбцов построчно и получить результат в третьем, простейший способ — протянуть формулу вниз. Например:

  1. Введите в C1 формулу =A1-B1.
  2. Наведите курсор на правый нижний угол ячейки C1 (появится чёрный крестик).
  3. Дважды кликните или протяните вниз до нужной строки.

Для вычитания целых массивов (например, чтобы получить разницу между двумя таблицами) используйте формулы массива. Например, чтобы вычесть значения из диапазона B1:B10 из A1:A10 и вывести результаты в C1:C10:

  1. Выделите диапазон C1:C10.
  2. Введите формулу =A1:A10-B1:B10.
  3. Нажмите Ctrl+Shift+Enter (в новых версиях Excel это не обязательно).

Важно: Формулы массива могут значительно замедлить работу книги, если данных слишком много (более 10 000 строк). В таких случаях лучше использовать Power Query или VBA.

Задача Формула Примечание
Вычитание построчно =A1-B1 (протянуть вниз) Простейший метод для небольших таблиц
Вычитание массивов =A1:A10-B1:B10 (массив) Требует Ctrl+Shift+Enter в старых версиях
Вычитание с фильтром =СУММЕСЛИМН(...) Позволяет вычитать только отфильтрованные данные

Типичные ошибки и как их избежать

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

  • 🚫 Ошибка #ЗНАЧ!: Возникает, если в ячейке текст вместо числа. Проверьте формат данных или используйте =ЕЧИСЛО(A1), чтобы игнорировать нечисловые значения.
  • 🔢 Неверный результат: Убедитесь, что вы не перепутали порядок вычитания (например, =B1-A1 вместо =A1-B1).
  • 📅 Отрицательные даты: Excel не поддерживает даты до 1900 года. Если вам нужны исторические расчёты, используйте специальные функции или Google Sheets.
  • Неправильное время: Если разница во времени отображается как дробь (например, 0,5), измените формат ячейки на Время.

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

=A1-(B1+C1)  

=A1-B1+C1

⚠️ Внимание: Если вы копируете формулу с вычитанием в другой файл, где данные хранятся в других ячейках, используйте абсолютные ссылки (например, $A$1), чтобы избежать сдвига ссылок.
Как исправить ошибку #ДЕЛ/0!?

Эта ошибка появляется при делении на ноль, но иногда она маскирует другие проблемы. Проверьте:

1. Нет ли в знаменателе пустой ячейки (она воспринимается как 0).

2. Не используете ли вы функцию, которая возвращает 0 (например, ПОИСКПОЗ при отсутствии значения).

3. Оберните формулу в ЕСЛИОШИБКА, чтобы скрыть ошибку: =ЕСЛИОШИБКА(A1/B1;0)

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

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

Самый простой способ — использовать абсолютную ссылку. Например, если вы хотите вычесть число из ячейки B1 из всего столбца A:

  1. Введите в C1 формулу =A1-$B$1.
  2. Протяните формулу вниз на нужное количество строк.

Знак $ фиксирует ссылку на B1, чтобы она не сдвигалась при копировании.

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

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

  1. Выделите ячейку с результатом.
  2. Нажмите Ctrl+1 (или правая кнопка → Формат ячеек).
  3. Выберите формат Общий или Числовой.
Можно ли вычесть данные из закрытой книги Excel?

Да, но с ограничениями. Вы можете ссылаться на данные из закрытой книги, если:

  • Путь к файлу не изменился.
  • Имя листа и диапазон ячеек остались прежними.
  • Формула использует полный путь, например: ='C:\Путь\[Книга.xlsx]Лист1'!A1.

Однако Excel не обновляет данные из закрытых книг автоматически — вам придётся открывать источник для пересчёта.

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

Если второе время меньше первого (например, 1:00 и 23:00), Excel вернёт отрицательное значение. Чтобы получить корректную разницу:

  1. Используйте формулу: =ЕСЛИ(B1.
  2. Установите для ячейки с результатом формат Время.

Эта формула добавляет 1 день (24 часа) к меньшему времени, если оно меньше первого.

Как автоматически вычитать текущую дату из даты в ячейке?

Чтобы всегда видеть, сколько дней осталось до события, используйте функцию СЕГОДНЯ:

=A1-СЕГОДНЯ()

Где A1 — ячейка с целевой датой. Формула будет обновляться каждый день автоматически.

Если нужно получить разницу в годах или месяцах, используйте РАЗНДАТ:

=РАЗНДАТ(СЕГОДНЯ(); A1; "y") & " лет, " & РАЗНДАТ(СЕГОДНЯ(); A1; "ym") & " месяцев"