Отрицательные числа в скобках в Excel: 5 рабочих способов + нюансы

Зачем нужны отрицательные числа в скобках и когда это актуально

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

В Microsoft Excel по умолчанию отрицательные значения отображаются со знаком «минус» (-1 500). Однако бухгалтеры, аналитики и финансовые директора часто нуждаются в альтернативном формате — (1 500). Это не просто эстетика: так проще сравнивать данные, особенно при печати отчётов или экспорте в PDF. К тому же, многие корпоративные шаблоны требуют именно такого оформления.

В этой статье разберём 5 способов преобразовать отрицательные числа в скобках — от базового форматирования до автоматизации через VBA. Каждый метод подходит для разных задач: одни работают для разовых правок, другие — для динамических таблиц с тысячами строк.

Способ 1: Пользовательский формат ячеек — самый быстрый метод

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

Как это сделать:

  1. Выделите диапазон ячеек с числами (например, B2:B100).
  2. Нажмите правой кнопкой мыши и выберите Формат ячеек... (или используйте горячие клавиши Ctrl + 1).
  3. В открывшемся окне перейдите на вкладку Число → (все форматы).
  4. В поле Тип: введите один из шаблонов:
    • 🔢 # ##0;(# ##0) — для целых чисел без десятичных знаков.
    • 💰 # ##0.00;(# ##0.00) — для денежных значений (2 знака после запятой).
    • 📊 # ##0.00 "руб.";(# ##0.00 "руб.") — с указанием валюты.
  • Нажмите ОК.
  • Пример результата:

    Исходное значениеФормат # ##0;(# ##0)Формат # ##0.00 "руб.";(# ##0.00 "руб.")
    15001 5001 500.00 руб.
    -2300(2 300)(2 300.00 руб.)
    000.00 руб.
    ⚠️ Внимание: Если после применения формата числа не изменились, проверьте, что в ячейках действительно числовые значения, а не текст. Для этого выделите диапазон и посмотрите на строку формул — если слева стоит зелёный треугольник, данные хранятся как текст. Исправьте это через Текст по столбцам (вкладка Данные).

    Способ 2: Условное форматирование — для динамических таблиц

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

    Инструкция:

    1. Выделите диапазон (например, C2:C50).
    2. Перейдите на вкладку Главная → Условное форматирование → Создать правило.
    3. Выберите тип правила: Форматировать только ячейки, которые содержат.
    4. В выпадающем списке укажите: Значение меньше 0.
    5. Нажмите Формат... и на вкладке Число задайте пользовательский формат # ##0;(# ##0) (как в Способе 1).
    6. Дополнительно можно задать красный цвет шрифта на вкладке Шрифт.
    7. Нажмите ОК дважды.
    8. Преимущество метода: правила будут автоматически применяться к новым данным, соответствующим условию (значение < 0). Например, если в ячейке C10 формула =B10-A10 вернёт отрицательное значение, оно сразу отобразится в скобках.

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

      Способ 3: Формулы для преобразования — когда нужно сохранить исходные данные

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

      Варианты формул:

      • 📖 Для целых чисел: =ЕСЛИ(A1<0;"("&-A1&")";A1)
      • 💵 Для денежных значений с округлением: =ЕСЛИ(A1<0;"("&ТЕКСТ(-A1;"# ##0.00")&")";ТЕКСТ(A1;"# ##0.00"))
      • 🔄 Для динамического обновления: =ТЕКСТ(A1;"# ##0;(# ##0)") (аналог пользовательского формата, но в виде формулы).

    Пример использования:

    =ЕСЛИ(B2<0;"("&ТЕКСТ(-B2;"# ##0.00 руб.")&")";ТЕКСТ(B2;"# ##0.00 руб."))

    Эта формула преобразует значение -1250.5 в (1 250.50 руб.), а 3000 — в 3 000.00 руб..

    ⚠️ Внимание: Формулы возвращают текстовые значения, которые нельзя использовать в математических операциях. Если нужно сохранить числовой формат, комбинируйте этот метод с пользовательским форматированием (Способ 1).
    Как вернуть числовой формат после применения формулы?

    Если вы использовали формулу из этого раздела и теперь нужно вернуть числа для расчётов, создайте дополнительный столбец с функцией =ЗНАЧЕН(ПОДСТАВИТЬ(C2;"(";"");")";"")). Она удалит скобки и преобразует текст обратно в число. Однако проще изначально применять пользовательский формат (Способ 1), а не формулы.

    Способ 4: Макрос VBA — для автоматизации рутинных задач

    Если вам регулярно приходится преобразовывать отрицательные числа в скобках в десятках файлов, макрос на VBA сэкономит часы времени. Этот метод требует базовых знаний Visual Basic for Applications, но мы предоставляем готовый код.

    Как добавить макрос:

    1. Нажмите Alt + F11, чтобы открыть редактор VBA.
    2. В меню выберите Insert → Module.
    3. Вставьте следующий код:
      Sub FormatNegativeInParentheses()
      

      Dim rng As Range

      Dim cell As Range

      ' Выбираем диапазон (измените "A1:A100" на ваш)

      Set rng = Selection

      For Each cell In rng

      If IsNumeric(cell.Value) And cell.Value < 0 Then

      cell.NumberFormat = "# ##0;(# ##0)"

      End If

      Next cell

      End Sub

    4. Закройте редактор и вернитесь в Excel.
    5. Выделите нужный диапазон и запустите макрос через Вид → Макросы → FormatNegativeInParentheses → Выполнить.

    Преимущества макроса:

    • ⚡ Обрабатывает тысячи ячеек за секунды.
    • 🔄 Можно назначить на кнопку или горячие клавиши.
    • 🛠 Гибко настраивается (например, можно добавить обработку денежных форматов).
    ⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов), иначе код не сработает. Также убедитесь, что в настройках Excel разрешено выполнение макросов (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Включить все макросы).

    Сохранить файл как .xlsm

    Включить макросы в настройках Excel

    Выделить диапазон ячеек для обработки

    Проверить, что в ячейках числовые данные, а не текст

    -->

    Способ 5: Power Query — для импортированных данных

    Если отрицательные числа поступают в Excel из внешних источников (например, из , SQL-баз или CSV-файлов), Power Query позволит преобразовать их в скобки ещё на этапе импорта. Это избавит от ручной правки после обновления данных.

    Пошаговая инструкция:

    1. Импортируйте данные через Данные → Получить данные → Из файла/базы данных.
    2. В открывшемся окне Power Query выделите столбец с числами.
    3. Перейдите на вкладку Преобразовать и выберите Заменить значения.
    4. В поле Значение для поиска введите - (минус), а в Заменить на(.
    5. Добавьте ещё одну замену: ищите начало строки (^ в режиме регулярных выражений) и добавляйте ( перед отрицательными числами.
    6. Нажмите Закрыть и загрузить.

    Альтернативный метод — создать пользовательский столбец в Power Query с формулой:

    = if [YourColumn] < 0 then "(" & Text.From(-[YourColumn]) & ")" else Text.From([YourColumn])

    Где YourColumn — название вашего столбца.

    Важно: Power Query преобразует числа в текст, что может повлиять на дальнейшие вычисления. Чтобы избежать этого, применяйте пользовательский формат ячеек (Способ 1) уже после загрузки данных в Excel.

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

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

    ОшибкаПричинаРешение
    Скобки не появляютсяЯчейки содержат текст, а не числаИспользуйте Текст по столбцам или функцию =ЗНАЧЕН()
    Формат сбрасывается после обновленияДанные импортируются зановоПрименяйте формат через Power Query или макрос
    Числа со скобками не суммируютсяФормулы возвращают текстИспользуйте пользовательский формат вместо формул
    Скобки отображаются кривоНеправильный шрифт (например, Calibri не поддерживает некоторые символы)Смените шрифт на Arial или Times New Roman

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

    • 🔄 Для скрытия нулей: # ##0;(# ##0); (последний символ — пробел).
    • 📌 Для замены нулей на прочерк: # ##0;(# ##0);-.

    1) положительные числа; 2) отрицательные числа; 3) нули; 4) текст. Если секция пропущена, используется формат по умолчанию.-->

    FAQ: Частые вопросы по формату отрицательных чисел

    Можно ли сделать скобки красного цвета?

    Да. В пользовательском формате добавьте цвет перед секцией для отрицательных чисел: # ##0;[Красный](# ##0). Также можно комбинировать с условным форматированием (Способ 2).

    Как применить формат ко всем новым строкам в таблице?

    Если таблица структурирована (вкладка Вставка → Таблица), пользовательский формат автоматически распространится на новые строки. Для обычных диапазонов используйте макрос (Способ 4) или условное форматирование (Способ 2).

    Почему после копирования данных в другой файл скобки исчезают?

    Формат ячеек не всегда копируется вместе с данными. Чтобы сохранить его, используйте Специальная вставка → Форматы после вставки чисел. Или применяйте формат заново в новом файле.

    Можно ли сделать скобки квадратными вместо круглых?

    Да, просто измените символы в пользовательском формате: # ##0;[# ##0]. Аналогично работают фигурные скобки {} или угловые <>.

    Как вернуть стандартный формат со знаком «минус»?

    Выделите ячейки и выберите формат Общий или Числовой в меню Формат ячеек. Также можно удалить пользовательский формат через Ctrl + 1 → Число → Общий.