Как выделить строки с жирным шрифтом в Excel: от фильтра до VBA

Вы когда-нибудь сталкивались с ситуацией, когда в огромной таблице Microsoft Excel нужно быстро найти все строки, где текст выделен жирным? Возможно, это важные заголовки, ключевые данные или просто ошибки форматирования, которые требуется исправить. Вручную просматривать сотни строк — неэффективно, особенно если файл содержит десятки тысяч ячеек.

К сожалению, стандартный инструмент поиска по формату в Excel не всегда интуитивно понятен, а многие пользователи даже не подозревают о его существовании. Эта статья раскроет 5 проверенных методов, как выделить строки с жирным шрифтом — от простых фильтров до автоматизации через VBA. Мы рассмотрим решения для разных версий программы (2010–2023), включая Excel Online и MacOS, а также расскажем о подводных камнях каждого способа.

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

1. Способ: Использование фильтра по формату (самый быстрый)

Начнем с самого простого метода, который работает во всех современных версиях Excel (начиная с 2007 года). Этот способ не требует знания формул или макросов, но имеет ограничение: он временно скрывает строки без жирного текста, а не выделяет их цветом.

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

  1. Выделите диапазон данных, включая заголовки столбцов (например, A1:D100).
  2. Перейдите на вкладку Данные → нажмите Фильтр (или используйте горячие клавиши Ctrl+Shift+L).
  3. Щелкните по стрелке фильтра в любом столбце, где может быть жирный текст.
  4. В выпадающем меню выберите Фильтр по цветуФильтр по формату ячейки.
  5. В окне Автофильтр по формату установите галочку напротив Полужирный и нажмите ОК.

После этого в таблице останутся только строки, содержащие хотя бы одну ячейку с жирным текстом. Чтобы вернуть все данные, снова нажмите Фильтр на вкладке Данные.

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

2. Способ: Поиск по формату (горячие клавиши)

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

Алгоритм действий:

  1. Нажмите Ctrl+F, чтобы открыть окно Найти и заменить.
  2. Щелкните по кнопке Параметры (или Options в английской версии).
  3. Нажмите Формат → выберите вкладку Шрифт.
  4. В разделе Начертание установите Полужирный и нажмите ОК.
  5. В поле Найти оставьте пустым (ищем любой текст с жирным форматированием).
  6. Нажмите Найти все — внизу окна появится список всех ячеек с жирным текстом.
  7. Зажмите Ctrl и кликните по каждой строке в результатах поиска, чтобы выделить их в таблице.

Этот способ удобен тем, что позволяет сразу увидеть адреса ячеек (например, $A$5) и переходить к ним двойным кликом. Однако он не подходит для автоматизации — при каждом новом поиске процесс придется повторять.

Как сохранить результаты поиска?

Чтобы зафиксировать выделение ячеек с жирным текстом после закрытия окна поиска, нажмите Ctrl+C (скопировать), затем создайте новый лист и вставьте данные через Специальная вставка → Значения. Так вы получите отдельную таблицу только с нужными строками.

Способ Преимущества Недостатки Подходит для
Фильтр по формату Быстро, без формул Временно скрывает данные Единоразовый просмотр
Поиск по формату Показывает адреса ячеек Ручное выделение Анализ отдельных ячеек
Условное форматирование Визуальное выделение Сложно настроить Постоянная разметка

3. Способ: Условное форматирование с формулой

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

Инструкция для Excel 2016–2023:

  1. Выделите диапазон, который нужно проверить (например, A2:D100).
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. Выберите тип правила Использовать формулу для определения форматируемых ячеек.
  4. В поле формулы введите:
    =GET.CELL(20,!A1)=1
    Примечание: GET.CELL — это специальная функция, которая проверяет форматирование ячейки. Аргумент 20 соответствует свойству "жирный шрифт".
  5. Нажмите Формат и выберите цвет заливки (например, желтый) для выделения строк.
  6. В поле Применяется к убедитесь, что указан правильный диапазон, и нажмите ОК.

После применения правила все строки, содержащие хотя бы одну ячейку с жирным текстом, будут подсвечены. Главный плюс этого метода — автоматическое обновление при изменении форматирования.

⚠️ Внимание: Функция GET.CELL работает только в именованных формулах. Если правило не применяется, создайте имя для формулы через Формулы → Диспетчер имен.

Фильтр по формату|Поиск по формату (Ctrl+F)|Условное форматирование|VBA-макросы|Не работаю с жирным текстом-->

4. Способ: Макрос VBA для выделения строк

Для продвинутых пользователей, которые часто работают с большими таблицами, оптимальным решением станет VBA-макрос. Он позволяет автоматизировать процесс и даже сохранять результаты в отдельный лист.

Вот код макроса, который выделит цветом все строки с жирным текстом:

Sub HighlightBoldRows()

Dim rng As Range, cell As Range

Dim ws As Worksheet

Dim boldFound As Boolean

' Отключаем обновление экрана для ускорения

Application.ScreenUpdating = False

' Работаем с активным листом

Set ws = ActiveSheet

Set rng = ws.UsedRange

' Очищаем предыдущее выделение

rng.Interior.ColorIndex = xlNone

' Проверяем каждую ячейку

For Each cell In rng

If cell.Font.Bold Then

cell.EntireRow.Interior.Color = RGB(255, 255, 0) ' Желтый цвет

boldFound = True

End If

Next cell

' Сообщаем пользователю о результатах

If boldFound Then

MsgBox "Выделено " & WorksheetFunction.CountIf(rng, ">=1") & " строк с жирным текстом.", vbInformation

Else

MsgBox "Ячейки с жирным текстом не найдены.", vbExclamation

End If

Application.ScreenUpdating = True

End Sub

Чтобы использовать этот макрос:

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

Макрос не только выделит строки, но и покажет количество найденных совпадений. Для регулярного использования сохраните файл в формате .xlsm (с поддержкой макросов).

Включить макросы в настройках Excel (Файл → Параметры → Центр управления безопасностью)|Сохранить файл как .xlsm|Проверить диапазон данных на листе|Закрыть другие программы для ускорения работы-->

5. Способ: Power Query для сложных таблиц

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

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

  1. Выделите ваши данные и перейдите на вкладку ДанныеИз таблицы/диапазона (или Get Data → From Table/Range).
  2. В открывшемся редакторе Power Query добавьте пользовательский столбец через Добавить столбец → Пользовательский столбец.
  3. Введите формулу для проверки жирного текста (если он обозначен тегами, например, <b>текст</b>):
    = if Text.Contains([ВашСтолбец], "") then "Жирный" else "Обычный"
  4. Отфильтруйте новый столбец по значению Жирный.
  5. Нажмите Закрыть и загрузить, чтобы вернуть данные в Excel.

Этот метод полезен, если жирный текст задан семантически (например, в HTML-коде), а не через форматирование Excel. Он также позволяет очистить данные от тегов, оставив только текст.

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

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

  • 🔹 Фильтр не находит жирный текст: Убедитесь, что жирное начертание применено через кнопку Ж на панели инструментов, а не через условное форматирование или стили. Последнее фильтр не распознает.
  • 🔹 Макрос не работает: Проверьте, включена ли поддержка макросов в настройках Excel (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Настройки макросов).
  • 🔹 Условное форматирование не обновляется: Если вы изменили форматирование ячейки вручную, обновите правила через Условное форматирование → Управление правилами → Применить.
  • 🔹 Power Query не распознает теги: Убедитесь, что данные загружены как текст, а не как HTML. Используйте параметр Текстовый формат при импорте.

Еще одна частая ошибка — попытка искать жирный текст в объединенных ячейках. В этом случае стандартные методы могут не сработать. Решение: предварительно разъедините ячейки через Главная → Объединить и центрировать.

FAQ: Ответы на популярные вопросы

Можно ли выделить строки с жирным текстом в Excel Online?

В веб-версии Excel (Excel Online) доступны только базовые функции. Вы можете использовать Поиск по формату (Ctrl+FПараметрыФормат), но фильтрация и условное форматирование с проверкой жирного шрифта недоступны. Для полноценной работы скачайте файл и откройте его в настольной версии.

Как удалить жирный шрифт со всех ячеек сразу?

Чтобы убрать жирное начертание во всем документе:

  1. Нажмите Ctrl+A, чтобы выделить все ячейки.
  2. На вкладке Главная нажмите кнопку Ж (Полужирный), чтобы отменить форматирование.
  3. Если жирный текст задан через условное форматирование, перейдите в Условное форматирование → Управление правилами и удалите соответствующие правила.
Почему макрос выделяет не те строки?

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

  • В коде указан неверный диапазон (например, UsedRange захватывает пустые ячейки). Замените на конкретный диапазон, например A1:D1000.
  • Жирный шрифт применен к части текста в ячейке, а не ко всей ячейке. Макрос проверяет свойство Font.Bold для всей ячейки.
  • В таблице есть скрытые строки или фильтры. Снимите фильтрацию перед запуском макроса.

Решение: добавьте в код отладочные сообщения (например, Debug.Print cell.Address & ": " & cell.Font.Bold), чтобы проверить, какие ячейки распознаются как жирные.

Как экспортировать только строки с жирным текстом в новый файл?

Сделайте это в два этапа:

  1. Используйте макрос из 4-го способа, но вместо выделения цветом копируйте строки в новый лист:
    cell.EntireRow.Copy Destination:=wsNew.Range("A" & lastRow)

    где wsNew — это новый лист, а lastRow — переменная для отслеживания последней строки.

  2. Скопируйте новый лист в отдельный файл через Правка → Переместить/скопировать (выберите опцию Создать копию).
Работают ли эти методы в Google Таблицах?

В Google Sheets нет прямого аналога поиска по формату, но вы можете:

  • Использовать Условное форматирование с пользовательской формулой =ISNUMBER(REGEXMATCH(TO_TEXT(A1), "")) для поиска HTML-тегов.
  • Написать скрипт на Google Apps Script для выделения строк (аналог VBA).
  • Экспортировать файл в Excel и использовать описанные выше методы.