Введение: зачем вычитать числа в Excel и где это применяется
Вычитание фиксированного значения (например, 20) из набора чисел — одна из самых распространённых операций в Microsoft Excel. Эта задача возникает в бухгалтерии при расчёте скидок, в логистике для корректировки веса товаров, в аналитике при нормализации данных или даже в бытовых расчётах — скажем, когда нужно уменьшить все цены в прайс-листе на 20 рублей. Но несмотря на кажущуюся простоту, новичков часто подстерегают ошибки: от неверного копирования формул до проблем с форматами ячеек.
В этой статье мы разберём 5 способов вычитания числа 20 — от элементарных арифметических операций до автоматизации с помощью макросов. Вы узнаете, как избежать типичных ошибок (например, когда вместо вычитания Excel вдруг начинает конкатенировать текст), как применить операцию ко всему столбцу за секунды, и почему иногда проще использовать специальную вставку, чем писать формулы. А для продвинутых пользователей — бонус: как создать динамическую формулу, где вычитаемое значение будет браться из другой ячейки.
Способ 1: Простая формула вычитания в одной ячейке
Начнём с базового метода, который подойдёт даже тем, кто впервые открыл Excel. Предположим, у вас в ячейке A1 есть число 150, и вам нужно вычесть из него 20. Для этого:
- Выделите ячейку, где должен появиться результат (например,
B1). - Введите знак равенства
=, затем кликните по ячейкеA1. - Поставьте знак минус
-и введите число20. - Нажмите
Enter.
Формула примет вид:
=A1-20
Если вам нужно вычесть 20 из нескольких чисел в столбце A, просто потяните за маркер автозаполнения (маленький квадратик в правом нижнем углу ячейки B1) вниз. Excel автоматически скопирует формулу для всех строк.
⚠️ Внимание: Если после автозаполнения вы видите ошибку #ЗНАЧ!, проверьте, нет ли в исходных ячейках текста вместо чисел. Excel не может вычитать из строки!
Ячейки содержат только числа (не текст)
Формат ячеек — "Общий" или "Числовой"
Нет скрытых пробелов (используйте функцию СЖПРОБЕЛЫ)
-->
Способ 2: Вычитание с использованием абсолютной ссылки
Допустим, вычитаемое значение (20) хранится в отдельной ячейке, например, D1. Если вы используете формулу =A1-D1 и потянете её вниз, Excel будет сдвигать ссылку на D1 на одну строку вниз (получится D2, D3 и т.д.), что приведёт к ошибкам. Чтобы зафиксировать ячейку с вычитаемым значением, используйте абсолютную ссылку:
=A1-$D$1
Символ $ перед буквой и цифрой указывает Excel, что ссылка не должна изменяться при копировании. Теперь формулу можно смело тянуть вниз — значение из D1 будет вычитаться из всех чисел в столбце A.
| Ячейка с исходным числом | Формула | Результат |
|---|---|---|
A1 = 100 |
=A1-$D$1 |
80 |
A2 = 200 |
=A2-$D$1 |
180 |
A3 = "Текст" |
=A3-$D$1 |
#ЗНАЧ! |
Если вы работаете с большими таблицами, где вычитаемое значение может меняться (например, процент скидки), абсолютная ссылка сэкономит вам часы ручной правки формул.
Постоянно
Иногда
Раньше не знал(а) о них
Никогда не использую-->
Способ 3: Специальная вставка для вычитания без формул
Если вам нужно однократно вычесть 20 из всех чисел в столбце и сохранить результат как значения (без формул), используйте функцию Специальная вставка. Это удобно, когда вы хотите "запечатать" данные перед отправкой отчёта или дальнейшей обработкой.
- В пустой ячейке (например,
C1) введите число20. - Скопируйте эту ячейку (
Ctrl+C). - Выделите диапазон чисел, из которых нужно вычесть 20 (например,
A1:A100). - Правой кнопкой мыши выберите
Специальная вставка → Вычесть.
Excel мгновенно вычтет 20 из всех выделенных ячеек, а формул в них не останется. Этот метод особенно полезен для работы с большими массивами данных, где формулы могут замедлять пересчёт листа.
⚠️ Внимание: После специальной вставки отменить действие (Ctrl+Z) можно только до первого сохранения файла. Если вы ошиблись с числом (ввели не 20, а 200), придётся повторять операцию заново.
Что делать, если специальная вставка не работает?
Убедитесь, что выделенные ячейки содержат только числа (не текст и не даты).
Проверьте, не защищён ли лист от изменений (Рецензирование → Снять защиту листа).
Если Excel выдаёт ошибку, попробуйте скопировать ячейку с числом 20, затем выделить целевой диапазон и выбрать в меню Главная → Вставить → Вставить значения → Вычесть.
Способ 4: Вычитание с помощью функции СУММ (для сложных случаев)
На первый взгляд, использовать СУММ для вычитания кажется странным, но этот метод незаменим, когда нужно вычесть 20 из суммы нескольких ячеек. Например, у вас есть столбец с доходами и столбец с расходами, и вам нужно вычесть фиксированные 20 из итоговой суммы.
Формула будет выглядеть так:
=СУММ(A1:A10)-20
Или, если вычитаемое значение хранится в ячейке D1:
=СУММ(A1:A10)-$D$1
Преимущество этого подхода в том, что вы можете:
- 📊 Вычесть 20 из суммы фильтрованного диапазона (если применить функцию
ПРОМЕЖУТОЧНЫЕ.ИТОГИ). - 🔄 Динамически обновлять результат при изменении исходных данных.
- 📈 Использовать результат в других формулах (например, для расчёта процентов).
Способ 5: Автоматизация с помощью макроса (для продвинутых)
Если вы регулярно вычитаете 20 из сотен или тысяч ячеек, имеет смысл записать макрос. Это сэкономит время и исключит ошибки при ручном вводе. Вот простой код на VBA, который вычитает 20 из всех выделенных ячеек:
Sub Subtract20()
Dim cell As Range
For Each cell In Selection
If IsNumeric(cell.Value) Then
cell.Value = cell.Value - 20
End If
Next cell
End Sub
Чтобы использовать этот макрос:
- Нажмите
Alt+F11, чтобы открыть редактор VBA. - Вставьте код в новый модуль (
Insert → Module). - Вернитесь в Excel, выделите ячейки и запустите макрос (
Alt+F8 → Subtract20 → Выполнить).
Макрос автоматически проверяет, является ли содержимое ячейки числом, и только затем выполняет вычитание. Это защищает от ошибок, если в диапазоне попадаются текстовые значения.
⚠️ Внимание: Макросы работают только в файлах с расширением.xlsm(с поддержкой макросов). Если вы сохраните файл как.xlsx, код будет утерян!
Типичные ошибки и как их избежать
Даже в простой операции вычитания пользователи часто сталкиваются с проблемами. Вот самые распространённые из них и способы их решения:
- 🔢 Ошибка
#ЗНАЧ!: Возникает, если Excel воспринимает ячейку как текст. Решение — используйте функциюЗНАЧЕНили измените формат ячейки на "Числовой". - 📉 Неправильное копирование формул: Если вы тянете формулу вниз, а ссылка на вычитаемое значение сдвигается, зафиксируйте её с помощью
$(например,$D$1). - 🔄 Круговые ссылки: Если вы пытаетесь вычесть значение из ячейки, которая сама зависит от результата, Excel выдаст предупреждение. Проверьте логику формул.
- 📊 Потеря точности: При работе с дробными числами Excel может округлять результаты. Используйте формат "Дробный" или увеличьте количество десятичных знаков.
Ещё одна частая проблема — скрытые символы в ячейках (например, пробелы или неразрывные пробелы). Они делают данные "нечисловыми". Чтобы очистить ячейки, используйте функцию:
=ЗНАЧЕН(СЖПРОБЕЛЫ(A1))-20
FAQ: Ответы на частые вопросы
Можно ли вычесть 20 из даты в Excel?
Да, но результат будет зависеть от формата. Excel хранит даты как числа (количество дней с 1 января 1900 года). Если вы вычтете 20 из даты, вы получите дату на 20 дней раньше. Например, =A1-20, где A1 содержит 15.05.2026, вернёт 25.04.2026.
Как вычесть 20% вместо фиксированного числа?
Используйте формулу =A1*A1*20% или =A1*(1-20%). Если 20% хранится в ячейке D1, формула будет =A1*(1-$D$1).
Почему после вычитания результат отображается как дата?
Excel автоматически преобразует числа в даты, если они попадают в диапазон дат (например, 45000 ≈ 11.01.2023). Чтобы исправить, измените формат ячейки на "Числовой" или "Общий".
Можно ли вычесть 20 из каждого второго числа в столбце?
Да, с помощью формулы массива или функции ЕСЛИ. Например: =ЕСЛИ(ОСТАТ(СТРОКА();2)=0; A1-20; A1). Эта формула вычтет 20 только из ячеек в чётных строках.
Как вычесть 20 из чисел в другой книге Excel?
Используйте внешние ссылки. Например, если число находится в книге Book2.xlsx на листе Лист1 в ячейке A1, формула будет: =[Book2.xlsx]Лист1!$A$1-20. Убедитесь, что обе книги открыты.