Как сделать фильтр по номерам в Excel: 5 способов с примерами

Если в вашей таблице Excel хранятся номера заказов, артикулы товаров или идентификаторы клиентов, а стандартный текстовый фильтр не справляется с поиском по числовым диапазонам — проблема решается за 3 шага. Настройка фильтрации по номерам отличается от работы с текстом: здесь важно учитывать формат ячеек (Общий, Числовой или Текстовый), а также использовать специальные операторы (>=1000, между 500 и 2000). Например, при попытке отфильтровать номера от 100 до 500 в столбце с текстовым форматом Excel проигнорирует условие — данные просто не попадут в выборку.

В 90% случаев ошибки возникают из-за неправильного формата ячеек или неверно заданных критериев. Если после применения фильтра вы видите пустой список или некорректные результаты, сначала проверьте формат столбца (выделите его → правая кнопка → Формат ячеек). Далее в статье разберём 5 рабочих методов — от базового автофильтра до расширенных формул для динамических диапазонов, включая обработку номеров с ведущими нулями (например, 00123).

1. Базовый автофильтр: как отфильтровать номера по диапазону

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

Инструкция:

  • 📌 Выделите заголовок столбца с номерами (например, "Номер заказа").
  • 🔍 Перейдите на вкладку Данные → нажмите Фильтр (или используйте горячие клавиши Ctrl+Shift+L).
  • 📊 Кликните на стрелочку фильтра в заголовке столбца → выберите Числовые фильтры.
  • 🎯 Укажите условие (например, между) и введите границы диапазона (скажем, 100 и 500).

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

2. Фильтрация номеров с ведущими нулями

Номера типа 00123 или 000-456 Excel по умолчанию воспринимает как текст, даже если они выглядят как числа. Стандартный числовой фильтр их проигнорирует. Решения:

  1. Преобразовать в текстовый формат:
    • 📝 Выделите столбец → правая кнопка → Формат ячеек → выберите Текстовый.
    • 🔄 Используйте текстовый фильтр: в выпадающем списке выберите Текстовые фильтрыначинается с и укажите 00.
  • Добавить вспомогательный столбец:

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

  • Для номеров с разделителями (например, 123-456-789) используйте функцию =ПСТР() для извлечения числовых частей:

    =ЗНАЧЕН(ПСТР(A2;1;3))  // Извлекает первые 3 цифры
    📊 Как вы обычно фильтруете номера в Excel?
    Использую автофильтр
    Пишу формулы
    Преобразую данные в Power Query
    Не фильтрую, ищу вручную

    3. Расширенный фильтр: точная настройка критериев

    Если нужно отфильтровать номера по сложным условиям (например, "номера от 1000 до 5000 ИЛИ равные 999"), используйте расширенный фильтр. Он позволяет задавать несколько критериев одновременно и сохранять результаты на другом листе.

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

    1. Создайте диапазон критериев (например, на отдельном листе):
      НомерУсловие
      >=1000
      <=5000
      OR
      =999
    2. Выделите исходные данные (включая заголовки).
    3. Перейдите на вкладку ДанныеРасширенный фильтр.
    4. Укажите Диапазон условий (выделите созданную таблицу критериев).
    5. Выберите, куда выводить результат: на этом же листе или на другом листе.

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

    Диапазон критериев расположен отдельно от данных|Заголовки в диапазоне критериев совпадают с заголовками исходной таблицы|Условия "И" расположены в одной строке, "ИЛИ" — в разных|Для текстовых номеров использован оператор "=" или "начинается с"-->

    4. Фильтрация с помощью формул (для опытных пользователей)

    Если нужна гибкая фильтрация (например, номера с чётными последними цифрами или соответствующие шаблону), используйте формулы массива или функцию ФИЛЬТР (доступна в Excel 365 и 2021).

    Пример 1: Фильтрация номеров, оканчивающихся на 00:

    =ФИЛЬТР(A2:A100; ПРАВСИМВ(A2:A100; 2)="00")

    Пример 2: Номера в диапазоне 100–500, но только чётные:

    =ФИЛЬТР(A2:A100; (A2:A100>=100)(A2:A100<=500)(ЧЁТН(A2:A100)))

    Для старых версий Excel (2016 и ранее) используйте вспомогательный столбец с формулой проверки условия, а затем примените автофильтр к нему:

    =ЕСЛИ(И(A2>=100; A2<=500; ЧЁТН(A2)); "Да"; "Нет")
    Как ускорить работу формул фильтрации?

    Для больших таблиц (10 000+ строк) отключите автоматический пересчёт формул: ФормулыПараметры вычисленийВручную. Обновляйте результаты по кнопке F9 после изменения данных.

    5. Фильтрация по нескольким столбцам с номерами

    Если нужно отфильтровать данные по номерам в разных столбцах (например, "Номер заказа" и "Номер клиента"), комбинируйте условия в расширенном фильтре или используйте функцию ФИЛЬТР с несколькими критериями.

    Пример: Фильтрация строк, где номер заказа > 1000 И номер клиента начинается с КЛ-:

    =ФИЛЬТР(
    

    A2:C100;

    (B2:B100>1000) * (ЛЕВСИМВ(C2:C100; 3)="КЛ-")

    )

    Для текстовых номеров с разделителями (например, AB-1234-CD) извлекайте числовые части с помощью =ПСТР() или регулярных выражений (в Power Query).

    6. Ошибки при фильтрации номеров и как их исправить

    Распространённые проблемы и решения:

    ОшибкаПричинаРешение
    Фильтр не находит номера Номера в текстовом формате, а условие числовое Преобразуйте данные в числовой формат или используйте текстовые операторы
    Результаты не обновляются Отключён автоматический пересчёт формул Нажмите F9 или включите Автоматически в Параметры вычислений
    Фильтр игнорирует ведущие нули Excel удаляет нули при преобразовании в число Сохраните формат как текст или добавьте апостроф перед номером ('00123)

    Если после применения фильтра часть данных "исчезает", проверьте:

    • 🔍 Скрытые строки: фильтр мог скрыть их автоматически. Нажмите ДанныеОчистить для сброса.
    • 📌 Объединённые ячейки: они могут нарушать работу фильтра. Разъедините их перед настройкой.
    • 🛠 Ошибки в формулах: если используете вспомогательные столбцы, проверьте их на наличие #ЗНАЧ! или #ДЕЛ/0!.

    7. Автоматизация: фильтрация номеров с помощью Power Query

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

    • 🔄 Преобразовывать текстовые номера в числовые (с сохранением ведущих нулей).
    • 📊 Фильтровать по нескольким условиям одновременно (например, диапазон + шаблон).
    • 🔄 Автоматически обновлять данные при изменении источника.

    Пример шагов в Power Query:

    1. Загрузите данные: ДанныеИз таблицы/диапазона.
    2. Выделите столбец с номерами → ПреобразоватьФорматТекст (если нужны ведущие нули).
    3. Примените фильтр: кликните на стрелочку в заголовке столбца → укажите условия (например, начинается с или в диапазоне).
    4. Сохраните запрос и загрузите данные обратно в Excel.

    Power Query сохраняет все шаги, поэтому при следующем обновлении данных фильтрация применится автоматически.

    8. Альтернативы: фильтрация номеров в Google Sheets

    Если вы работаете в Google Таблицах, процесс похож, но есть нюансы:

    • 📌 Автофильтр включается через ДанныеСоздать фильтр.
    • 🔍 Для числовых диапазонов используйте Фильтр по условиюБольше чем/Меньше чем.
    • 🛠 Функция FILTER работает аналогично Excel, но поддерживает регулярные выражения:
      =FILTER(A2:B100; REGEXMATCH(A2:A100; "^00\d+"))

      (фильтрует номера, начинающиеся с 00).

    В Google Sheets нет расширенного фильтра как в Excel, но его заменяет комбинация функций FILTER + QUERY.

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

    Можно ли отфильтровать номера по последним цифрам (например, все номера, оканчивающиеся на 5)?

    Да. Используйте одну из этих формул:

    • Для числовых номеров: =ФИЛЬТР(A2:A100; ПРАВСИМВ(A2:A100;1)="5").
    • Для текстовых номеров: =ФИЛЬТР(A2:A100; ПРАВСИМВ(A2:A100;1)="5") (работает и для чисел в текстовом формате).

    В старых версиях Excel добавьте вспомогательный столбец с формулой =ПРАВСИМВ(A2;1) и фильтруйте по нему.

    Почему фильтр не видит номера с буквами (например, A123B)?

    Excel воспринимает такие номера как текст. Решения:

    1. Используйте текстовый фильтр: содержитA123.
    2. Для извлечения числовой части (123) используйте формулу:
      =ЗНАЧЕН(ПСТР(A2;2;ДЛСТР(A2)-2))

      (удалит первую и последнюю букву).

    Как сохранить фильтр для повторного использования?

    Способы:

    • 📌 Таблицы Excel: преобразуйте диапазон в таблицу (Ctrl+T). Фильтры сохранятся при добавлении новых строк.
    • 🔄 Шаблоны: сохраните файл как шаблон (.xltx) с настроенным фильтром.
    • 📊 Power Query: сохраните запрос — фильтрация будет применяться автоматически при обновлении данных.
    Можно ли фильтровать номера по цвету ячейки?

    Да, но не через стандартный фильтр. Используйте:

    1. Условное форматирование + фильтр по цвету:
      1. Выделите диапазон → Условное форматирование → создайте правило (например, "ячейка содержит текст 001").
      2. Назначьте цвет для таких ячеек.
      3. Примените фильтр по цвету: стрелочка фильтра → Фильтр по цвету → выберите нужный.
    2. Функция ПОЛУЧИТЬ.ЯЧЕЙКУ (только для активной ячейки):
      =ЕСЛИ(ПОЛУЧИТЬ.ЯЧЕЙКУ(38; A2)=3; "Да"; "Нет")

      (3 — код цвета, проверяется с помощью макроса).

    Для автоматизации используйте VBA.

    Как отфильтровать номера, которые есть в другом списке?

    Используйте функцию ФИЛЬТР (Excel 365/2021) или расширенный фильтр:

    1. Формула:
      =ФИЛЬТР(A2:A100; ПОИСКПОЗ(A2:A100; D2:D50; 0))

      (где D2:D50 — список номеров для сравнения).

    2. Расширенный фильтр:
      1. Создайте диапазон критериев с заголовком и списком номеров.
      2. В меню ДанныеРасширенный фильтр укажите этот диапазон как условие.

    Для текстовых номеров добавьте в формулу ТОЧНОЕСООТВ():

    =ФИЛЬТР(A2:A100; СУММПРОИЗВ(--ТОЧНОЕСООТВ(A2:A100; D2:D50)))