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

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

В этой статье разберём не только базовые правила создания пользовательских форматов (например, # ##0,00 для денежных значений), но и продвинутые техники: условное форматирование через маски, работу с цветами, текстовыми метками и даже скрытие данных. Все примеры протестированы в Excel 2019—2026 и Office 365, но большинство методов работают и в старых версиях (начиная с Excel 2010).

1. Где находится настройка пользовательского формата?

Чтобы открыть редактор пользовательских форматов, выполните одно из действий:

  • 📌 Выделите ячейку или диапазон → нажмите Ctrl+1 (горячие клавиши для вызова окна формата).
  • 📌 Перейдите на вкладку Главная → группа Число → кликните по стрелке в правом нижнем углу.
  • 📌 Правый клик по ячейке → Формат ячеек... → вкладка Число.

В открывшемся окне выберите категорию «(все форматы)» — здесь отображаются как встроенные, так и пользовательские шаблоны. Поле Тип: вверху предназначено для ввода или редактирования маски формата. Справа вы увидите предварительный просмотр, как будет выглядеть значение в ячейке.

2. Синтаксис пользовательского формата: разбираем код

Формат в Excel состоит из четырёх секций, разделённых точкой с запятой (;):

[Положительные числа];[Отрицательные числа];[Нули];[Текст]

Если секция пропущена, Excel использует формат из первой секции. Например, маска # ##0,00;[Красный]-# ##0,00 отобразит положительные числа чёрным, а отрицательные — красным с знаком минус.

СимволЗначениеПримерРезультат для числа 1234,56
0Обязательная цифра (если нет — отображается ноль)0000.001234.56
#Необязательная цифра (нули не отображаются)####.##1234.56
,Разделитель тысяч# ##0,001 234,56
?Пробел для выравнивания (вместо ведущих нулей)???0 1234 (3 пробела перед числом)
@Заполнитель для текстаКод: @Код: ABC123 (если в ячейке "ABC123")

Для изменения цвета текста используйте названия на английском в квадратных скобках: [Чёрный], [Красный], [Зелёный], [Синий] и др. Например, формат [Зелёный]# ##0;[Красный]-# ##0 сделает положительные числа зелёными, а отрицательные — красными.

Как добавить свой цвет?

В Excel 2013 и новее поддерживаются 56 цветов по имени (например, [Violet] или [Gold]). Полный список можно найти в официальной документации Microsoft. Для пользовательских оттенков потребуется VBA.

3. Популярные примеры пользовательских форматов

Рассмотрим готовые решения для типовых задач. Скопируйте маску в поле Тип: и адаптируйте под свои нужды.

  • 💰 Денежный формат с валютами: "р." # ##0,00;[Красный]"р." -# ##0,00 → отобразит 1 234,56 р. или -1 234,56 р. (красным).
  • 📅 Дата с днём недели: dddd, d mmmm yyyy → преобразует 15.05.2026 в среда, 15 мая 2026.
  • 📞 Телефонный номер: +7 (###) ###-##-## → из 9876543210 сделает +7 (987) 654-32-10.
  • ⏱️ Время с секундами: [ч]:мм:сс → отобразит 136:25:45 (если в ячейке 136 часов).
  • 🔢 Скрытие нулей: # ##0;-# ##0; → ячейка с 0 будет пустой.

Для работы с текстовыми метками используйте кавычки. Например, формат "Заказ №"0000 преобразует число 42 в Заказ №0042. Это удобно для генерации документов или этикеток.

Денежный (рубли/доллары)|Дата/время|Телефонные номера|Скрытие нулей|Другой-->

4. Условное форматирование через пользовательские маски

Пользовательские форматы могут заменять простые правила условного форматирования. Например, чтобы выделить числа больше 100 зелёным, а меньше 50 — красным, используйте:

[Зелёный][>100]# ##0;[Красный][<50]-# ##0;[Синий]# ##0

Здесь:

  • [>100] — условие для первой секции (числа > 100).
  • [<50] — условие для второй секции (числа < 50).
  • Третья секция срабатывает для остальных значений (50—100), отображая их синим.

Можно комбинировать несколько условий. Например, формат [>1000]"Большой";[<100]"Малый";"Средний" заменит числа текстовой меткой в зависимости от значения. Это полезно для категоризации данных без дополнительных столбцов.

Убедитесь, что условие в квадратных скобках стоит ПЕРЕД цветом (например, [>100][Красный], а не наоборот)|Используйте точку с запятой для разделения секций|Тестируйте формат на граничных значениях (например, ровно 100 или 50)|Не забывайте про секцию для нулей, если она важна

-->

5. Ошибки и ограничения: что нельзя сделать?

Несмотря на гибкость, пользовательские форматы имеют ограничения:

⚠️ Внимание: Форматы не изменяют реальное значение ячейки! Если в ячейке число 1234, а вы применили формат "Товар №"0000, то в формулах оно по-прежнему будет использоваться как 1234, а не как текст.
  • 🚫 Невозможно: динамически менять формат в зависимости от данных в другой ячейке (для этого нужно условное форматирование или VBA).
  • 🚫 Ограничение символов: максимальная длина маски — 255 символов.
  • 🚫 Цвета: нельзя использовать градиенты или полупрозрачные оттенки (только сплошные цвета из списка).
  • 🚫 Даты: нельзя создавать полностью кастомные форматы дат (например, «День: d, Месяц: m» не сработает — только стандартные заполнители d, m, yyyy и т.д.).

Если вам нужно больше возможностей, рассмотрите:

  • 🔧 Условное форматирование (вкладка Главная → Условное форматирование) для динамических правил.
  • 🔧 Функцию ТЕКСТ() для преобразования данных в текст с заданным форматом (например, =ТЕКСТ(A1; "д мmmм гггг")).
  • 🔧 VBA для создания полностью кастомных решений (например, изменение цвета ячейки в зависимости от данных из другой таблицы).

6. Продвинутые техники: текст + числа, скрытие данных

С помощью пользовательских форматов можно комбинировать текст и числа, а также скрывать части данных. Например:

  • 📊 Процент с меткой: "Доля: "0,0% → преобразует 0,75 в Доля: 75,0%.
  • 🔍 Скрытие части числа: # ##0"" → из 12345678 отобразит 1234 (полезно для маскировки номеров карт).
  • 📅 Дата + текст: "Срок: "dd.mm.yyyy → преобразует 15.05.2026 в Срок: 15.05.2026.

Для скрытия всех данных в ячейке (например, паролей) используйте формат из трёх точек с запятой: ;;;. Ячейка будет выглядеть пустой, но значение останется доступным для формул.

Ещё один полезный трюк — отображение положительных и отрицательных чисел с разными единицами измерения. Например, формат # ##0 "кг";-# ##0 "г" покажет 5 кг для 5 и -300 г для -0,3.

7. Как сохранить и перенести пользовательский формат?

Созданные форматы сохраняются в книге Excel, но не в шаблоне по умолчанию. Чтобы перенести их в другой файл:

  1. Откройте книгу с нужным форматом.
  2. Выделите ячейку с применённым форматом.
  3. Скопируйте её (Ctrl+C).
  4. В новой книге выделите целевую ячейку → Главная → Формат по образцу (или Ctrl+Shift+C для выбора формата).

Чтобы сделать формат доступным во всех новых книгах:

  1. Создайте книгу с нужными форматами.
  2. Сохраните её как шаблон (Файл → Сохранить как → Шаблон Excel (*.xltx)).
  3. При создании нового файла выбирайте этот шаблон.

Для массового применения формата к большому диапазону используйте Формат по образцу (кисть) или макрос:

Sub ApplyCustomFormat()

Selection.NumberFormat = "ваша_маска_формата"

End Sub

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

Можно ли в пользовательском формате использовать эмодзи или символы валют, которых нет на клавиатуре?

Да! Скопируйте нужный символ (например, ₽, €, 💎) и вставьте его прямо в маску формата в кавычках. Пример: "Цена: "0,00" ₽". Excel отобразит символ корректно, если шрифт его поддерживает (например, Calibri или Arial Unicode MS).

Почему мой формат не применяется к ячейке?

Вероятные причины:

  • Ячейка содержит текст, а вы пытаетесь применить числовой формат (или наоборот).
  • В маске есть синтаксическая ошибка (например, лишняя запятая или не закрытые кавычки).
  • Формат конфликтует с условным форматированием (последнее имеет приоритет).

Проверьте тип данных в ячейке (Числовой, Текстовый и т.д.) и исправьте маску.

Как сделать, чтобы в ячейке отображался текст "Пусто", если значение равно нулю?

Используйте формат с тремя секциями: # ##0;-# ##0;"Пусто". Третья секция отвечает за отображение нулей.

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

Нет, пользовательские форматы работают только с данными текущей ячейки. Для динамического отображения (например, "Бюджет: [значение из A1]") потребуется:

  • Формула вида ="Бюджет: "&ТЕКСТ(A1;"# ##0").
  • Условное форматирование с правилом на основе формулы.
  • VBA-скрипт для сложной логики.
Почему после применения формата числа округляются?

Это происходит, если в маске указано меньше десятичных знаков, чем в реальном числе. Например, формат # ##0 округлит 1234,56 до 1235. Чтобы избежать округления, используйте # ##0.00 или увеличьте количество знаков после запятой.