Как в Excel выбрать значения больше одного числа, но меньше другого: от простых фильтров до сложных формул

Почему задача «больше одного, но меньше другого» возникает так часто?

Работа с диапазонами чисел — одна из самых распространённых задач в Microsoft Excel и Google Таблицах. Представьте: у вас есть список продаж, температурных замеров или оценок студентов, и нужно выделить только те значения, которые попадают в определённый интервал. Например, найти товары с ценой от 1000 до 5000 рублей, сотрудников с опытом от 3 до 10 лет, или дни, когда температура была выше 15°C, но ниже 25°C.

На первый взгляд задача кажется простой, но нюансов здесь масса. Как правильно составить формулу, чтобы не пропустить граничные значения? Как визуально выделить ячейки, попадающие в диапазон? И почему иногда Фильтр работает не так, как ожидалось? В этой статье разберём 5 способов решения — от элементарных до продвинутых, с примерами для разных версий Excel (включая Excel 365 и Excel 2019).

Спойлер: самый универсальный метод — комбинация функций И() и ЕСЛИ(), но для больших массивов данных лучше использовать Фильтр или Условное форматирование. А если нужно не просто выделить, а посчитать количество таких значений — пригодится СЧЁТЕСЛИМН().

📊 Как часто вам приходится работать с числовыми диапазонами в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

Способ 1: Фильтр данных — самый быстрый вариант для визуального анализа

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

Как это сделать:

  1. Выделите заголовок столбца с числами (например, "Цена" или "Возраст").
  2. Перейдите на вкладку Данные → нажмите Фильтр (или используйте сочетание клавиш Ctrl+Shift+L).
  3. Нажмите на стрелочку фильтра в заголовке столбца → выберите Числовые фильтрыМежду....
  4. Введите нижнюю и верхнюю границы диапазона (например, 1000 и 5000) → нажмите ОК.

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

Выделен заголовок столбца с числами

Установлен фильтр (Ctrl+Shift+L)

Выбран пункт "Между..." в числовых фильтрах

Границы диапазона введены корректно (нижняя < верхней)

-->

⚠️ Внимание: Если в столбце есть пустые ячейки или текстовые значения (например, "Н/Д"), Excel их автоматически скрывает при фильтрации. Чтобы их увидеть, используйте Фильтр по цвету или Текстовые фильтры.

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

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

Недостатки:

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

Способ 2: Условное форматирование — выделение ячеек цветом

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

Инструкция:

  1. Выделите диапазон ячеек с числами (например, B2:B100).
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. В окне Новое правило форматирования выберите Форматировать только ячейки, которые содержат.
  4. В разделе Форматировать только ячейки с: выберите Значениемежду.
  5. Введите нижнюю и верхнюю границы (например, 10 и 20).
  6. Нажмите Формат, выберите цвет заливки (например, зелёный) и нажмите ОК.

Теперь все ячейки с значениями от 10 до 20 будут подсвечены. Чтобы изменить правила, вернитесь в Условное форматированиеУправление правилами.

Параметр Значение Пример
Нижняя граница Число или ссылка на ячейку 10 или =A1
Верхняя граница Число или ссылка на ячейку 20 или =B1
Формат Цвет заливки, шрифта или границ Зелёная заливка + жирный шрифт
Область применения Диапазон ячеек B2:B100

Совет: Если границы диапазона хранятся в других ячейках (например, A1 и B1), используйте ссылки вместо чисел. Так при изменении значений в A1 или B1 форматирование обновится автоматически.

Способ 3: Формула с функцией ЕСЛИ() — для динамических расчётов

Когда нужно не просто выделить или отфильтровать данные, а получить результат (например, пометку "В диапазоне" или "Вне диапазона"), используйте формулу с ЕСЛИ() и логической функцией И().

Базовый синтаксис:

=ЕСЛИ(И(A2>=10; A2<=20); "В диапазоне"; "Вне диапазона")

Разберём на примере: допустим, в столбце A у нас температуры, а в столбце B мы хотим отметить, какие из них попадают в интервал от 18°C до 25°C.

  1. В ячейке B2 введите формулу:
    =ЕСЛИ(И(A2>=18; A2<=25); "Норма"; "Отклонение")
  2. Растяните формулу на весь столбец (двойной клик по маркеру автозаполнения).

Результат: в столбце B появится "Норма" для значений от 18 до 25 и "Отклонение" для остальных.

Вариации формулы:

  • 📌 С подсчётом: =ЕСЛИ(И(A2>=10; A2<=20); 1; 0) — вернёт 1 для значений в диапазоне и 0 для остальных. Потом можно использовать СУММ(), чтобы посчитать количество.
  • 📌 С ссылками на ячейки: Если границы хранятся в D1 (нижняя) и E1 (верхняя), формула будет:
    =ЕСЛИ(И(A2>=$D$1; A2<=$E$1); "Да"; "Нет")
  • 📌 С текстом: Если в ячейках смешанные данные (числа и текст), добавьте проверку ЕЧИСЛО():
    =ЕСЛИ(И(ЕЧИСЛО(A2); A2>=10; A2<=20); "В диапазоне"; "")
⚠️ Внимание: Если в формуле используете абсолютные ссылки (например, $D$1), не забудьте зафиксировать их знаком $, иначе при копировании формулы границы диапазона сдвинутся.

Способ 4: Функция СЧЁТЕСЛИМН() — подсчёт значений в диапазоне

Допустим, вам нужно узнать, сколько чисел в столбце попадает между двумя значениями. Например, сколько сотрудников имеют стаж от 5 до 10 лет. Для этого идеально подходит функция СЧЁТЕСЛИМН() (в английской версии — COUNTIFS()).

Синтаксис:

=СЧЁТЕСЛИМН(диапазон; ">="&нижняя_граница; диапазон; "<="&верхняя_граница)

Пример: подсчитаем количество чисел от 100 до 500 в столбце A (диапазон A2:A100):

=СЧЁТЕСЛИМН(A2:A100; ">="&100; A2:A100; "<="&500)

Если границы хранятся в ячейках B1 (100) и C1 (500), формула примет вид:

=СЧЁТЕСЛИМН(A2:A100; ">="&B1; A2:A100; "<="&C1)

Почему СЧЁТЕСЛИМН() лучше, чем комбинация СЧЁТЕСЛИ()?

  • 🔹 Одно условие: СЧЁТЕСЛИ() может проверять только одно условие за раз (например, ">=100"), поэтому для диапазона пришлось бы вычитать два результата:
    =СЧЁТЕСЛИ(A2:A100; "<=500") - СЧЁТЕСЛИ(A2:A100; "<100")

    Это неудобно и чревато ошибками.

  • 🔹 Несколько критериев: СЧЁТЕСЛИМН() позволяет добавлять дополнительные условия. Например, посчитать числа от 100 до 500 только в чётных строках:
    =СЧЁТЕСЛИМН(A2:A100; ">="&100; A2:A100; "<="&500; A2:A100; "=ЧЁТН()")

Ограничение: СЧЁТЕСЛИМН() работает только с одним диапазоном. Если нужно проверить несколько столбцов (например, диапазон цен и категорию товара), используйте комбинацию с И() в формуле массива.

Способ 5: Функция ФИЛЬТР() в Excel 365 — динамическая выборка

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

Синтаксис:

=ФИЛЬТР(диапазон; (диапазон>=нижняя_граница)*(диапазон<=верхняя_граница); "Нет данных")

Пример: извлечём из столбца A2:A20 все числа от 50 до 100:

=ФИЛЬТР(A2:A20; (A2:A20>=50)*(A2:A20<=100); "Нет значений")

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

  • 🔹 (A2:A20>=50) возвращает массив ИСТИНА/ЛОЖЬ для каждого элемента.
  • 🔹 (A2:A20<=100) — второй массив условий.
  • 🔹 Умножение * эквивалентно логическому И() — возвращает ИСТИНА только если оба условия выполнены.
  • 🔹 ФИЛЬТР() извлекает только те значения, для которых результат ИСТИНА.

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

  • 🔹 Динамический результат — при изменении исходных данных выборка обновляется автоматически.
  • 🔹 Можно комбинировать с другими функциями, например, СУММ():
    =СУММ(ФИЛЬТР(A2:A20; (A2:A20>=50)*(A2:A20<=100)))
⚠️ Внимание: Функция ФИЛЬТР() доступна только в Excel 365 и Excel 2021. В более старых версиях используйте ДВССЫЛ() с формулами массива (но это сложнее).
Что делать, если ФИЛЬТР() возвращает #ИМЯ?

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

  1. Создайте вспомогательный столбец с формулой =ЕСЛИ(И(A2>=50; A2<=100); A2; "").
  2. Скопируйте видимые значения (без пустых ячеек) в новый диапазон.

Распространённые ошибки и как их избежать

Даже в простой задаче с диапазонами легко допустить ошибку. Вот TOP-5 проблем и их решения:

  1. Границы перепутаны местами (нижняя > верхней):

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

    =ЕСЛИ(B1>C1; "Ошибка: нижняя граница больше верхней"; ваша_формула)

  2. Текст вместо чисел:

    Если в столбце есть текст (например, "Н/Д"), функции вроде СЧЁТЕСЛИМН() их проигнорируют, а ЕСЛИ() может выдать ошибку. Используйте ЕЧИСЛО() для проверки:

    =ЕСЛИ(И(ЕЧИСЛО(A2); A2>=10; A2<=20); "Да"; "Нет")

  3. Абсолютные ссылки забыли зафиксировать:

    При копировании формулы вниз ссылки на ячейки с границами (например, B1 и C1) сдвинутся на B2 и C2. Исправляйте на $B$1 и $C$1.

  4. Фильтр не срабатывает на даты:

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

  5. Условное форматирование не обновляется:

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

    • 🔸 Формат ячеек с границами — должен быть Общий или Числовой.
    • 🔸 В правилах форматирования используются абсолютные ссылки (например, $D$1).

Совет: Чтобы быстро найти ошибки в формулах, используйте Оценка формулы (ФормулыЗависимости формулОценка формулы). Этот инструмент покажет, на каком этапе Excel получает неожиданный результат.

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

Можно ли использовать диапазон с плавающими границами (например, "больше среднего, но меньше максимума")?

Да! Вместо фиксированных чисел используйте функции СРЗНАЧ(), МАКС(), МИН() и т.д. Пример формулы для значений выше среднего, но ниже максимума:

=ЕСЛИ(И(A2>СРЗНАЧ($A$2:$A$100); A2<МАКС($A$2:$A$100)); "В диапазоне"; "")

Для условного форматирования введите в правило формулу:

=И(A2>СРЗНАЧ($A$2:$A$100); A2<МАКС($A$2:$A$100))
Как сделать диапазон с открытой верхней или нижней границей (например, "больше 100, но без верхнего предела")?

В этом случае просто пропустите ненужную границу:

  • 🔹 Только нижняя граница (больше 100):
    =ЕСЛИ(A2>100; "Да"; "Нет")

    или в фильтре выберите "больше...".

  • 🔹 Только верхняя граница (меньше 100):
    =ЕСЛИ(A2<100; "Да"; "Нет")

    или в фильтре выберите "меньше...".

В СЧЁТЕСЛИМН() тоже можно указать одно условие:

=СЧЁТЕСЛИМН(A2:A100; ">100")
Почему функция СЧЁТЕСЛИМН() возвращает 0, хотя в диапазоне есть подходящие значения?

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

  1. Неверный диапазон: Проверьте, что в формуле указаны все строки с данными (например, A2:A100, а не A1:A100, если в A1 заголовок).
  2. Текст вместо чисел: Используйте ЕЧИСЛО() или преобразуйте данные в числа (ЗначениеТекст по столбцам).
  3. Ошибки в условиях: Убедитесь, что операторы сравнения написаны правильно:
    • 🔸 ">=" (больше или равно), а не =>.
    • 🔸 "<=" (меньше или равно), а не =<.
  • Локальные настройки: В некоторых версиях Excel с неанглийской локалью операторы сравнения могут отличаться. Попробуйте заменить ";" на "," в формуле.
  • Как применить диапазон к данным в сводной таблице?

    В сводной таблице используйте Фильтр значений:

    1. Щёлкните правой кнопкой по полю со значениями (например, "Сумма продаж").
    2. Выберите Фильтр значенийМежду....
    3. Введите границы диапазона.

    Если нужно посчитать количество записей в диапазоне, добавьте поле в область Значения и выберите Количество.

    Можно ли использовать диапазоны в Power Query?

    Да! В Power Query (инструмент для преобразования данных) диапазоны задаются через фильтры:

    1. Загрузите данные в Power Query (ДанныеИз таблицы/диапазона).
    2. Выделите столбец с числами → нажмите стрелочку фильтра → Числовые фильтрыМежду....
    3. Введите границы и нажмите ОК.
    4. После применения фильтра нажмите Закрыть и загрузить.

    Преимущество: фильтрация в Power Query не зависит от исходных данных — при обновлении диапазон сохранится.