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

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

В этой статье разберём 5 способов вычитания в Excel — от элементарных до продвинутых. Вы научитесь не только базовой арифметике, но и работе с динамическими диапазонами, условным вычитанием и даже макросами для автоматизации. А ещё узнаете, как избежать типичных ошибок, которые портят 90% расчётов.

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

📊 Как часто вы используете вычитание в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда не пробовал

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

Начнём с азов. Чтобы вычесть значение одной ячейки из другой, используйте знак минус (-) или функцию =РАЗНОСТЬ() (в английской версии — =SUBTRACT()). Разница между ними минимальна, но есть нюансы.

Пример: у вас в ячейке A1 число 150, а в B175. Чтобы найти разность, введите в C1:

=A1-B1

или

=РАЗНОСТЬ(A1; B1)

Обе формулы вернут 75. Но функция РАЗНОСТЬ() удобнее, если вы работаете с массивами данных или нужно вычесть сразу несколько значений (об этом позже).

  • 📌 Плюс базового метода: простота и скорость. Подходит для разовых расчётов.
  • ⚠️ Минус: если поменять ячейки местами (=B1-A1), результат будет отрицательным. Это может сбить с толку в финансовых отчётах.
  • 🔄 Лайфхак: используйте $ для фиксации ячеек (например, =A1-$B$1), чтобы при копировании формулы вниз вычиталось всегда одно и то же значение.

2. Вычитание диапазонов: как найти разность для нескольких строк

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

=A1:A10-B1:B10

Но здесь есть подвох: Excel не позволит ввести такую формулу как есть. Чтобы она заработала, нажмите Ctrl+Shift+Enter (в новых версиях Excel 365 это не требуется). Формула автоматически обернётся в фигурные скобки:

{=A1:A10-B1:B10}

Результат появится в первой ячейке, а остальные значения можно протянуть вниз. Альтернатива — использовать функцию РАЗНОСТЬ() для каждой строки отдельно, но это дольше.

Доход (A)Расход (B)Прибыль (A-B)
1500800=A1-B1 → 700
23001200=A2-B2 → 1100
9001100=A3-B3 → -200
⚠️ Внимание: Если в диапазонах разное количество строк, Excel вернёт ошибку #Н/Д. Всегда проверяйте размеры выделяемых областей перед массивом.

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

Часто разность нужно считать только при выполнении условия. Например, вычесть налог 13% из зарплаты, но только если она превышает 50 000 ₽. Здесь поможет функция =ЕСЛИ():

=ЕСЛИ(A1>50000; A1-A1*13%; A1)

Разберём формулу:

  1. A1>50000 — условие (зарплата > 50 000).
  2. A1-A1*13% — действие, если условие истинно (вычесть 13%).
  3. A1 — действие, если условие ложно (оставить без изменений).

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

=ЕСЛИМН(

A1<30000; A1;

A1<50000; A1-A1*10%;

ИСТИНА; A1-A1*13%

)

Как работает ЕСЛИМН?

Функция проверяет условия по порядку и возвращает результат для первого истинного условия. "ИСТИНА" в конце — это условие "во всех остальных случаях".

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

Excel хранит даты и время как числа (например, 1 = 01.01.1900, 0,5 = 12:00). Поэтому вычитание работает и здесь, но результат нужно правильно интерпретировать.

Пример 1: Разность между двумя датами (сколько дней прошло):

=B1-A1

где A1 = 01.01.2026, B1 = 15.01.2026. Результат: 14 (дней).

Пример 2: Разность во времени (сколько часов между двумя метками):

=ТЕКСТ(B1-A1; "[ч]:мм")

Формат [ч]:мм покажет полные часы (например, 36:15 вместо 12:15, если разница больше 24 часов).

  • Ловушка: Если вычесть время с датой из времени без даты (например, 10:00 - 01.01.2026 08:00), Excel вернёт ошибку. Сначала приведите данные к одному формату.
  • 📅 Решение: Используйте функции =ДАТАЗНАЧ() для преобразования текста в дату или =ВРЕМЗНАЧ() для времени.

Убедитесь, что ячейки имеют формат "Дата" или "Время"|Используйте ТЕКСТ() для отображения результата в нужном формате|Проверьте, нет ли в данных текста (например, "янв" вместо "01")

-->

5. Продвинутые приёмы: вычитание с помощью Power Query и макросов

Если вам нужно вычесть значения из разных файлов, листов или после фильтрации, ручные формулы не спасут. Здесь поможет Power Query (вкладка Данные → Получить данные).

Алгоритм для Power Query:

  1. Импортируйте данные в редактор Power Query (Данные → Из таблицы/диапазона).
  2. Добавьте пользовательский столбец с формулой вычитания (например, [Столбец1] - [Столбец2]).
  3. Загрузите результат обратно в Excel.

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

Sub SubtractValue()

Dim rng As Range

For Each rng In Range("A1:A10")

rng.Value = rng.Value - Range("B1").Value

Next rng

End Sub

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

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

Даже в простом вычитании легко ошибиться. Вот топ-3 ошибки, которые портят 80% расчётов в Excel:

ОшибкаПричинаРешение
#ЗНАЧ!В ячейке текст вместо числаИспользуйте =ЗНАЧЕН() для преобразования или проверьте данные на опечатки
#ДЕЛ/0!Деление на ноль в сложной формулеДобавьте проверку =ЕСЛИОШИБКА()
Неправильный знакПерепутаны местами ячейки (=B1-A1 вместо =A1-B1)Проверьте порядок аргументов или используйте =ABS() для модуля

Ещё одна распространённая проблема — скрытые символы (пробелы, неразрывные пробелы, символы валют). Чтобы их найти, используйте функцию =ПЕЧСИМВ(A1). Она покажет реальное содержимое ячейки, включая невидимые знаки.

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

Можно ли вычесть проценты в Excel?

Да. Чтобы вычесть 20% из числа в ячейке A1, используйте формулу:

=A1-A1*20%

или

=A1*(1-20%)

Второй вариант надёжнее, так как избегает ошибок округления.

Как вычесть значение из каждой второй строки?

Используйте функцию =ЕСЛИ() с проверкой номера строки:

=ЕСЛИ(ОСТАТ(СТРОКА();2)=0; A1-100; A1)

Эта формула вычтет 100 из всех чётных строк.

Почему после вычитания появляется ######?

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

Как вычесть время с учётом выходных?

Для этого нужна функция =ЧИСТРАБДНИ() (англ. NETWORKDAYS). Пример:

=ЕСЛИ(ЧИСТРАБДНИ(A1;B1)>0; B1-A1; 0)

где A1 и B1 — даты начала и конца периода. Формула вернёт разность только для рабочих дней.

Можно ли вычесть данные из закрытой книги?

Нет, Excel не позволяет ссылаться на закрытые файлы в формулах. Откройте книгу или импортируйте данные через Power Query. Альтернатива — использовать VBA для извлечения значений из закрытого файла (требует навыков программирования).