Формулой напрямую сделать текст жирным в Excel невозможно — стандартные функции вроде =ЖИРНЫЙ() не существуют. Но задача решается обходными путями: через условное форматирование, функцию CHAR(10) с ручным форматированием или VBA-макросы. Если вам нужно автоматически выделять жирным ячейки по условию (например, значения выше 100 или текст "Срочно"), читайте далее — разберём каждый метод с примерами для Excel 2010–2023 и Microsoft 365.
Важно понимать разницу: формула может только вернуть значение, но не изменить его оформление. Жирный шрифт — это свойство формата ячейки, а не её содержимого. Поэтому все решения ниже работают через связку "формула + инструмент форматирования". Начнём с самого надёжного способа — условного форматирования.
1. Условное форматирование: жирный текст по формуле
Это единственный способ сделать текст жирным автоматически без макросов. Алгоритм: создаём правило, которое проверяет условие (например, =A1>100) и применяет жирный шрифт к ячейке. Подходит для динамических данных, где значения меняются, а форматирование должно обновляться вместе с ними.
Пример: сделаем жирными все ячейки в столбце B, если соответствующие значения в столбце A больше 50. Шаги:
- Выделите диапазон, который нужно отформатировать (например,
B1:B100). - Перейдите на вкладку
Главная→Условное форматирование→Создать правило. - Выберите тип правила:
Использовать формулу для определения форматируемых ячеек. - В поле "Форматировать значения, для которых следующая формула является истинной" введите:
Примечание: в формуле всегда используется адрес первой ячейки выделенного диапазона (здесь=A1>50A1, даже если выделилиB1:B100). - Нажмите
Формат, перейдите на вкладкуШрифти выберитеЖирный. Подтвердите нажатиемОК.
Теперь при изменении значений в столбце A ячейки в B будут автоматически становиться жирными, если условие выполняется. Этот метод работает во всех версиях Excel, включая онлайн-версию.
Ссылки в формуле относительные (без $)|Диапазон выделен правильно (не захватывает заголовки)|Формат применён к нужному стилю шрифта (не только жирный, но и цвет/размер при необходимости)|Правило не конфликтует с другими правилами условного форматирования-->
⚠️ Внимание: Если формула возвращает ошибку (например,#ЗНАЧ!), условное форматирование не сработает. Проверьте синтаксис и диапазоны ссылок. В Excel 365 можно использовать новые функции вродеФИЛЬТР, но для форматирования они не подходят.
2. Функция CHAR(10) + ручное форматирование: обманный метод
Этот способ подходит, если нужно внутри одной ячейки сделать жирным только часть текста. Суть: разделяем текст символом переноса (CHAR(10)), а затем вручную форматируем отдельные строки. Минус — автоматического обновления не будет, но зато работает без макросов.
Пример: в ячейке A1 нужно отобразить текст "Итого: 1000", где "Итого:" — обычный шрифт, а "1000" — жирный. Делаем так:
- В ячейке
A1введите формулу:
Пояснение:="Итого: "&ТЕКСТ(1000;"# ##0")&CHAR(10)&ТЕКСТ(1000;"# ##0")CHAR(10)добавляет перенос строки, а значение 1000 дублируется для демонстрации. - Нажмите
Alt + Enter, чтобы активировать режим переноса строк в ячейке. - Дважды кликните по ячейке
A1, чтобы перейти в режим редактирования. - Выделите мышью вторую строку (значение "1000") и нажмите
Ctrl + B(или кнопкуЖна панели инструментов).
Результат: в ячейке будет две строки, где нижняя — жирная. Этот метод удобен для статических отчётов, где данные не меняются часто. Для динамических данных лучше использовать условное форматирование или VBA.
| Метод | Автоматическое обновление | Работает в онлайн-версии | Требует макросов | Поддержка частичного форматирования |
|---|---|---|---|---|
| Условное форматирование | Да | Да | Нет | Нет (вся ячейка) |
| CHAR(10) + ручное форматирование | Нет | Да | Нет | Да (часть текста) |
| VBA (ChangeEvent) | Да | Нет | Да | Да (часть текста) |
Условное форматирование|Функцию CHAR(10)|VBA-макросы|Не знаю, как это сделать-->
3. VBA-макросы: жирный текст по формуле с частичным форматированием
Если нужно автоматически выделять жирным часть текста внутри ячейки (например, только числа или ключевые слова), потребуется VBA. Этот метод самый гибкий, но работает только в настольных версиях Excel и требует включённых макросов.
Пример: сделаем жирными все числа в ячейках столбца A. Код макроса:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range
Dim rng As Range
Set rng = Intersect(Target, Me.Range("A:A"))
If Not rng Is Nothing Then
Application.EnableEvents = False
For Each cell In rng
If IsNumeric(cell.Value) Then
cell.Font.Bold = True
Else
cell.Font.Bold = False
End If
Next cell
Application.EnableEvents = True
End If
End Sub
Как установить:
- Нажмите
Alt + F11, чтобы открыть редактор VBA. - В окне
Projectнайдите вашу книгу и откройте модуль листа (двойной клик по имени листа, например,Лист1). - Вставьте код выше в открывшееся окно.
- Сохраните файл как
.xlsm(с поддержкой макросов).
Теперь при изменении любой ячейки в столбце A числа будут автоматически становиться жирными. Для частичного форматирования (например, жирные только слова "Важно") потребуется более сложный код с использованием объекта Characters.
Пример кода для частичного форматирования текста
Private Sub FormatBoldWords()
Dim cell As Range
For Each cell In Selection
If InStr(1, cell.Value, "Важно", vbTextCompare) > 0 Then
Dim pos As Integer
pos = InStr(1, cell.Value, "Важно", vbTextCompare)
cell.Characters(pos, 6).Font.Bold = True
End If
Next cell
End Sub
Этот код выделяет жирным слово "Важно" в выделенных ячейках. Чтобы запустить, выделите диапазон и выполните макрос черезAlt + F8.⚠️ Внимание: Макросы могут конфликтовать с другими скриптами в книге. Перед использованием сохраните резервную копию файла. В Excel Online и мобильных версиях VBA не поддерживается.
4. Альтернативные решения: когда жирный текст не нужен
Иногда задачу можно решить без жирного шрифта, используя другие инструменты визуализации:
- 🔹 Цвет фона ячейки: Условное форматирование с заливкой (
=A1>100→ красный фон) часто заметнее, чем жирный текст. - 🔹 Границы ячеек: Добавление рамок через
Главная→Границывыделяет данные без изменения шрифта. - 🔹 Значки набора: В условном форматировании можно добавить стрелки или флажки (
Управление правилами→Наборы значков). - 🔹 Выделение цветом шрифта: Красный или зелёный текст привлекает внимание не хуже, чем жирный.
Эти методы часто проще в реализации и не требуют макросов. Например, для финансовых отчётов удобнее использовать цветовую маркировку: отрицательные значения — красным, положительные — зелёным.
5. Частые ошибки и как их избежать
При работе с жирным текстом через формулы пользователи допускают типичные ошибки:
- 🚫 Абсолютные ссылки в условном форматировании: Если в формуле указать
=$A$1>50, правило будет проверять только ячейкуA1, а не весь столбец. Используйте=A1>50. - 🚫 Несоответствие диапазонов: Выделили
B1:B100, а в формуле ссылаетесь наC1:C50— правило не сработает. - 🚫 Забыли включить перенос строк: При использовании
CHAR(10)не нажалиAlt + Enter, и текст отображается в одной строке. - 🚫 Макросы отключены: Файл сохранён как
.xlsxвместо.xlsm, и код VBA не выполняется.
Проверьте настройки безопасности макросов: Файл → Параметры → Центр управления безопасностью → Параметры центра... → Параметры макросов. Для работы скриптов выберите Включить все макросы (не рекомендуется для файлов из ненадёжных источников).
1. Нет ли в ячейках ошибок (#Н/Д, #ЗНАЧ!).
2. Не перекрывается ли правило другим (пriorитет правил настраивается в "Диспетчере правил").
3. Включён ли в настройках Excel показ форматирования (вкладка Вид → Показать → Условное форматирование).-->
6. Сравнение методов: какой выбрать
Выбор метода зависит от задачи:
- 📌 Для автоматического выделения целых ячеек: Условное форматирование — самый простой и универсальный способ.
- 📌 Для частичного форматирования внутри ячейки: VBA (если нужно автоматически) или
CHAR(10)+ ручное форматирование (для статических данных). - 📌 Для онлайн-версии Excel: Только условное форматирование или
CHAR(10). - 📌 Для больших таблиц (10 000+ строк): Условное форматирование может тормозить — используйте VBA с оптимизированным кодом.
Если вам нужно выделять жирным ячейки по сложному условию (например, "если значение в A1 больше B1 и при этом C1 содержит слово 'Да'"), комбинируйте функции в условном форматировании:
=И(A1>B1; НЕ(ЕПУСТО(C1)); ПОИСК("Да"; C1))
FAQ: Ответы на частые вопросы
Можно ли сделать жирным текст в Excel через функцию?
Нет, в Excel нет функции, которая напрямую изменяет форматирование текста. Функции возвращают значения, а не стили. Для изменения шрифта используйте условное форматирование или VBA.
Почему условное форматирование не работает?
Проверьте:
- Диапазон в правиле совпадает с выделенным.
- Формула возвращает
ИСТИНА/ЛОЖЬ, а не ошибку. - В настройках Excel включён показ условного форматирования (
Файл→Параметры→Дополнительно→Показывать форматирование для этого листа).
Как сделать жирным только часть текста в ячейке по условию?
Для этого нужен VBA. Пример кода, который выделяет жирным все числа в выделенных ячейках:
Sub BoldNumbersInSelection()
Dim cell As Range, i As Integer, ch As String
For Each cell In Selection
If IsNumeric(cell.Value) Then
cell.Font.Bold = True
Else
cell.Font.Bold = False
For i = 1 To Len(cell.Value)
ch = Mid(cell.Value, i, 1)
If IsNumeric(ch) Then
cell.Characters(i, 1).Font.Bold = True
End If
Next i
End If
Next cell
End Sub
Выделите ячейки и запустите макрос через Alt + F8.
Работает ли это в Google Sheets?
В Google Таблицах тоже нет функции для жирного текста, но есть аналоги:
- Условное форматирование:
Формат→Условное форматирование→ выберите "Текст содержит" или "Больше чем". - Функция
=CHAR(10)+ ручное форматирование работает так же, как в Excel. - Apps Script (аналог VBA) позволяет автоматизировать частичное форматирование.
Как убрать жирный шрифт, установленный условным форматированием?
Способы:
- Удалите правило:
Главная→Условное форматирование→Управление правилами→ выберите правило и нажмитеУдалить правило. - Измените условие: отредактируйте формулу так, чтобы она возвращала
ЛОЖЬ. - Принудительно сбросьте формат: выделите ячейки →
Главная→Очистить→Очистить форматы.
В Excel нет прямой функции для жирного текста, но задача решается через:
1. Условное форматирование (автоматически для целых ячеек).
2. CHAR(10) + ручное форматирование (для части текста в статических данных).
3. VBA (для динамического частичного форматирования).
Выбор метода зависит от версии Excel, задачи и требований к автоматизации.-->