Как переместить знак «минус» в Excel: слева, справа или в скобках — все способы

Отрицательные числа в Microsoft Excel по умолчанию отображаются со знаком «минус» слева: -1500, -3,14%, -42°. Но что делать, если вам нужно перенести минус вправо (1500-), заключить число в скобки ((1500)**) или вовсе заменить знак на префикс «Дт» для бухгалтерских отчётов? Такие задачи часто возникают при оформлении финансовых документов, банковских выписок или корпоративных отчётов, где стандарты отображения отрицательных значений жёстко регламентированы.

В этой статье вы найдёте 5 проверенных способов изменить положение минуса в Excel — от простого форматирования до автоматизации через макросы. Мы разберём нюансы для разных версий программы (включая Excel 365 и Excel 2019), покажем, как избежать ошибок при копировании данных, и объясним, почему иногда минус «упрямо» возвращается на место. А для бухгалтеров и аналитиков добавим бонус: как настроить условное форматирование, чтобы отрицательные значения автоматически подсвечивались красным — но с минусом справа.

———

Почему минус в Excel стоит слева и можно ли это изменить?

По умолчанию Excel следует международным стандартам отображения чисел, где знак «минус» размещается перед числом (например, -250). Это правило закреплено в настройках программы и соответствует математическим канонам. Однако в некоторых отраслях требуется иное оформление:

🔹 Бухгалтерия: отрицательные суммы часто пишутся с минусом справа (1000-) или в скобках ((1000)), чтобы визуально отделить дебет от кредита.

🔹 Банковские выписки: минус может заменяться на префикс «Дт» или «OV» (от overdraft).

🔹 Научные данные: в некоторых графиках отрицательные значения подписываются справа для экономии места.

Можно ли перенести минус в Excel? Да, и для этого есть несколько методов — от ручного форматирования до автоматизации через VBA. Главное — понимать, что изменение отображения не затрагивает реальное значение ячейки: формулы по-прежнему будут воспринимать число как отрицательное, даже если визуально минус стоит справа.

📊 Как вы обычно работаете с отрицательными числами в Excel?
Оставляю минус слева (по умолчанию)
Переношу минус вправо вручную
Использую скобки для отрицательных значений
Автоматизирую через макросы
Не обращаю внимания на положение минуса

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

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

Как настроить:

  1. Выделите ячейки с отрицательными числами.
  2. Нажмите правой кнопкой мыши и выберите Формат ячеек... (или используйте сочетание Ctrl+1).
  3. Перейдите на вкладку Число → (все форматы).
  4. В поле Тип: введите один из шаблонов:
    • 🔸 Для минуса справа: # ##0;# ##0-
    • 🔸 Для скобок: # ##0;(# ##0)
    • 🔸 Для красного цвета + минуса справа: [Чёрный]# ##0;[Красный]# ##0-
  • Нажмите ОК.
  • Пример работы формата:

    Исходное значениеФормат # ##0;# ##0-Формат # ##0;(# ##0)
    -15001500-(1500)
    200200200
    -3,143,14-(3,14)

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

    Выделили только нужные ячейки (не всю строку)|

    Использовали правильный синтаксис формата (точка с запятой разделяет положительные и отрицательные значения)|

    Проверили отображение на примере 2-3 чисел|

    Сохранили файл после изменений (форматы могут сбрасываться при аварийном закрытии)-->

    Способ 2: Формулы для переноса минуса (для динамических данных)

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

    Формулы для переноса минуса:

    • 🔢 Минус справа: =ЕСЛИ(A1<0;АБС(A1)&"-";A1)
    • 🔢 В скобках: =ЕСЛИ(A1<0;"("&АБС(A1)&")";A1)
    • 🔢 С префиксом «Дт»: =ЕСЛИ(A1<0;"Дт "&АБС(A1);A1)

    Как это работает:

    1. Функция ЕСЛИ проверяет, отрицательное ли число в ячейке A1.
    2. Если да — преобразует его в положительное (АБС) и добавляет минус справа (или скобки/префикс).
    3. Если нет — оставляет значение без изменений.

    Пример:

    =ЕСЛИ(B2<0;АБС(B2)&"-";B2)

    Для ячейки B2=-500 формула вернёт 500-, а для B2=100100.

    ⚠️ Внимание: Формульный метод создаёт текстовое значение, а не число. Это означает, что:

    • 🔴 Вы не сможете использовать результат в математических расчётах.
    • 🔴 Сортировка по такой колонке будет некорректной (текст «100-» пойдёт после «99»).

    Если нужны дальнейшие вычисления, комбинируйте этот способ с ЗНАЧЕН (см. следующий раздел).

    Способ 3: VBA-макрос для массового изменения минуса

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

    Код для переноса минуса вправо:

    Sub MoveMinusToRight()
    

    Dim rng As Range

    Dim cell As Range

    Set rng = Selection 'Выделенный диапазон

    For Each cell In rng

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

    cell.Value = Abs(cell.Value) & "-"

    cell.NumberFormat = "@" 'Текстовый формат

    End If

    Next cell

    End Sub

    Как использовать:

    1. Нажмите Alt+F11, чтобы открыть редактор VBA.
    2. Вставьте код в новый модуль (Insert → Module).
    3. Выделите нужные ячейки в Excel и запустите макрос (F5).

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

    • 🔹 Обрабатывает тысячи ячеек за секунды.
    • 🔹 Сохраняет изменения навсегда (в отличие от пользовательского формата).
    • 🔹 Можно модифицировать под скобки или префиксы (замените & "-" на "(" & Abs(cell.Value) & ")").

    ⚠️ Внимание: Макрос преобразует числа в текст. Если потом потребуется вернуть числовой формат, используйте функцию ЗНАЧЕН или текст по столбцам (Данные → Текст по столбцам).

    Как вернуть числа в исходный вид после макроса?

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

    1. Вставьте вспомогательную колонку с формулой =ЗНАЧЕН(ПОДСТАВИТЬ(A1;"-";"")*(-1)).

    2. Скопируйте результаты и вставьте как значения (Специальная вставка → Значения).

    3. Удалите вспомогательную колонку.

    Способ 4: Условное форматирование + пользовательский формат

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

    Шаг 1: Настройка пользовательского формата

    Используйте формат из первого способа, но с цветом:

    [Чёрный]# ##0;[Красный]# ##0-

    Шаг 2: Дополнительное условное форматирование

    1. Выделите диапазон.
    2. Перейдите в Главная → Условное форматирование → Создать правило.
    3. Выберите Форматировать только ячейки, которые содержат.
    4. Установите условие: Значение ячейки → меньше → 0.
    5. Нажмите Формат и выберите красный шрифт (даже если цвет уже задан в пользовательском формате — это страховка).

    Результат:

    • 🔹 Положительные числа: чёрные, без изменений (1000).
    • 🔹 Отрицательные числа: красные, с минусом справа (1000-).

    ⚠️ Внимание: Если после применения условного форматирования минус не поменял положение, проверьте:

    • 🔴 Приоритет правил: пользовательский формат должен быть выше условного (перетащите его вверх в Управление правилами).
    • 🔴 Тип данных: условное форматирование не работает с текстовыми ячейками (если вы использовали формулы из Способа 2, сначала преобразуйте данные обратно в числа).

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

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

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

    1. Импортируйте данные в Power Query (Данные → Получить данные).
    2. Выделите колонку с числами, нажмите правой кнопкой → Преобразовать → Заменить значения.
    3. В поле Значение для поиска введите - (минус), в Замена — оставьте пустым.
    4. Добавьте новый столбец с формулой:
      = if [Column1] < 0 then Text.From(Abs([Column1])) & "-" else Text.From([Column1])
    5. Удалите исходную колонку и переименуйте новую.
    6. Нажмите Закрыть и загрузить.

    Преимущества Power Query:

    • 🔹 Формат сохраняется при обновлении данных (в отличие от пользовательского формата).
    • 🔹 Можно добавить дополнительные преобразования (например, заменить точку на запятую).
    • 🔹 Подходит для больших наборов данных (миллионы строк).

    ⚠️ Внимание: После загрузки данные в Excel будут текстовыми. Если нужны расчёты, добавьте вспомогательную колонку с =ЗНАЧЕН(ПОДСТАВИТЬ(A1;"-";"")*ЕСЛИ(ПРАВСИМВ(A1)="-";-1;1)).

    Частые ошибки и как их избежать

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

    Проблема 1: Минус возвращается на место после копирования

    Причина: Пользовательский формат — это только визуальное отображение. При копировании в другую программу или даже в другую книгу Excel может сбросить настройки.

    Решение:

    • 🔹 Используйте формулы (Способ 2) или макросы (Способ 3) для постоянного изменения.
    • 🔹 При экспорте в PDF или печать проблема не возникает — формат сохраняется.

    Проблема 2: Сортировка работает некорректно

    Причина: Текстовые значения (например, «1000-») сортируются как строки, а не как числа.

    Решение:

    • 🔹 Добавьте скрытую колонку с числовыми значениями и сортируйте по ней.
    • 🔹 Или используйте формулу для преобразования обратно в число: =ЗНАЧЕН(ПОДСТАВИТЬ(A1;"-";"")*ЕСЛИ(ПРАВСИМВ(A1)="-";-1;1)).

    Проблема 3: Условное форматирование не применяется

    Причина: Правила конфликтуют или применены к тексту вместо чисел.

    Решение:

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

    Таблица ошибок и решений:

    ОшибкаПричинаРешение
    Минус не переноситсяЯчейка содержит текст, а не числоПреобразуйте в число через ЗНАЧЕН или Текст по столбцам
    Формула возвращает #ЗНАЧ!В ячейке пустое значение или текстДобавьте проверку ЕСЛИОШИБКА или ЕПУСТО
    Цвет не меняетсяКонфликт условного форматированияОтключите другие правила для этого диапазона
    Макрос не работаетОтключены макросы в настройкахВключите макросы в Файл → Параметры → Центр управления безопасностью

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

    Можно ли перенести минус только для конкретных ячеек, а не для всей колонки?

    Да. Выделите только нужные ячейки и примените к ним пользовательский формат (Способ 1) или формулу (Способ 2). Условное форматирование тоже можно настроить для отдельного диапазона.

    Как сделать, чтобы минус отображался справа, но число оставалось числовым (а не текстом)?

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

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

    Скорее всего, макрос пропустил ячейки, которые:

    • 🔹 Уже были в текстовом формате (например, с апострофом перед числом).
    • 🔹 Содержали не числа, а формулы (макрос проверяет IsNumeric(cell.Value)).
    • 🔹 Были пустыми или с ошибками (#ДЕЛ/0!, #ЗНАЧ!).

    Решение: добавьте в макрос дополнительные проверки или обработайте данные заранее.

    Можно ли автоматически переносить минус при вводе нового числа?

    Да, с помощью события Worksheet_Change в VBA. Вставьте этот код в модуль листа:

    Private Sub Worksheet_Change(ByVal Target As Range)
    

    Dim cell As Range

    For Each cell In Target

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

    Application.EnableEvents = False

    cell.Value = Abs(cell.Value) & "-"

    cell.NumberFormat = "@"

    Application.EnableEvents = True

    End If

    Next cell

    End Sub

    Теперь при вводе отрицательного числа минус будет автоматически переноситься вправо.

    Как перенести минус в Google Таблицах?

    В Google Sheets используйте аналогичные методы:

    • 🔹 Пользовательский формат: Формат → Числа → Другие форматы → Пользовательский числовой формат. Введите 0;0-.
    • 🔹 Формулы: те же, что и в Excel (замените АБС на ABS).
    • 🔹 Apps Script: аналог VBA для автоматизации.

    Ограничение: в Google Таблицах нет Power Query, но можно использовать IMPORTRANGE с предварительной обработкой.