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

Сравнение чисел в Microsoft Excel — одна из самых востребованных операций при анализе данных. Без этого невозможно построить динамические отчёты, автоматизировать расчёты или даже просто проверить корректность введённых значений. Однако многие пользователи до сих пор сравнивают числа вручную или используют громоздкие обходные пути, не подозревая, что в Excel есть десятки встроенных инструментов для этого.

В этой статье вы найдёте 7 практических способов сравнить числа — от простых операторов `<` и `>` до сложных формул с условиями. Мы разберём, как проверять равенство, находить максимальные/минимальные значения, сравнивать данные из разных ячеек и даже анализировать диапазоны. Особое внимание уделим типичным ошибкам, которые допускают 90% новичков, и покажем, как их избежать.

Если вы когда-нибудь сталкивались с ситуацией, когда Excel неверно сравнивает числа (например, считает "10" меньше "2"), или хотите научиться автоматически выделять ячейки с отклонениями — этот материал для вас. Все примеры протестированы в Excel 2019–2023 и Excel Online, но большинство формул будут работать и в старых версиях (начиная с Excel 2007).

1. Базовые операторы сравнения: >, <, =, <> и их особенности

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

  • 🔢 = — проверяет равенство (=A1=B1 вернёт ИСТИНА, если значения одинаковые).
  • 🔢 <> — проверяет неравенство (=A1<>B1 вернёт ИСТИНА, если значения разные).
  • 🔢 > — "больше чем" (=A1>B1).
  • 🔢 < — "меньше чем" (=A1<B1).
  • 🔢 >= и <= — "больше или равно"/"меньше или равно".

Пример: если в ячейке A1 значение 15, а в B110, то формула =A1>B1 вернёт ИСТИНА. Но здесь есть подводный камень: Excel сравнивает не только числа, но и текст. Если в ячейке окажется слово "15" (как текст), а не число, результат может быть неожиданным.

⚠️ Внимание: Операторы сравнения в Excel чувствительны к типам данных. Число 10 и текст "10" (в кавычках) для программы — разные вещи! Чтобы избежать ошибок, используйте функцию =ЗНАЧЕН() для преобразования текста в число: =ЗНАЧЕН(A1)>10.

Ещё один нюанс: операторы можно комбинировать. Например, формула =И(A1>10; A1<20) проверит, попадает ли значение в диапазон от 10 до 20. Но об этом подробнее в следующем разделе.

2. Функция ЕСЛИ: сравнение с условием и вывод результата

Функция =ЕСЛИ() — самый популярный инструмент для сравнения чисел с последующим действием. Её синтаксис:

=ЕСЛИ(логическое_выражение; значение_если_истина; значение_если_ложь)

Примеры использования:

  • 📊 Сравнить продажи с планом: =ЕСЛИ(B2>=C2; "План выполнен"; "План не выполнен"), где B2 — фактические продажи, C2 — план.
  • 📊 Проверить положительное/отрицательное число: =ЕСЛИ(A1>0; "Плюс"; "Минус или ноль").
  • 📊 Выделить отклонения: =ЕСЛИ(ABS(A1-B1)>10%; "Сильное отклонение"; "В пределах нормы").

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

=ЕСЛИ(A1>100; "Высокий"; ЕСЛИ(A1>50; "Средний"; "Низкий"))

Но не увлекайтесь вложенностью: в Excel 2019 и старше допускается до 64 уровней вложения, но уже после 5–7 условий формула становится нечитаемой. В таких случаях лучше использовать =ВПР() или =ИНДЕКС/ПОИСКПОЗ.

📊 Как часто вы используете функцию ЕСЛИ в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

3. Сравнение диапазонов: функции МАКС, МИН, СРЗНАЧ и другие

Если нужно сравнить не две ячейки, а целый массив данных, на помощь придут статистические функции. Они позволяют:

  • 📈 Найти максимальное значение: =МАКС(A1:A10).
  • 📉 Найти минимальное: =МИН(B2:B20).
  • 📊 Сравнить со средним: =ЕСЛИ(A1>СРЗНАЧ(B1:B10); "Выше среднего"; "Ниже среднего").
  • 🔍 Найти количество ячеек, соответствующих условию: =СЧЁТЕСЛИ(C1:C100; ">50").

Пример из практики: допустим, у вас есть таблица с ценами конкурентов, и вы хотите выделить свои цены, которые выше средних по рынку. Формула будет такой:

=ЕСЛИ(A2>СРЗНАЧ(B2:D2); "Цена завышена"; "Цена конкурентна")

Где A2 — ваша цена, а B2:D2 — цены трёх конкурентов.

Функция Назначение Пример
МАКС() Максимальное значение в диапазоне =МАКС(A1:A100)
МИН() Минимальное значение =МИН(B2:B50)
СРЗНАЧ() Среднее арифметическое =СРЗНАЧ(C1:C20)
СЧЁТЕСЛИ() Количество ячеек, удовлетворяющих условию =СЧЁТЕСЛИ(D1:D100; ">100")
⚠️ Внимание: Функции МАКС и МИН игнорируют текстовые значения и пустые ячейки. Но если в диапазоне есть ошибки (например, #ДЕЛ/0!), они могут повлиять на результат. Чтобы избежать этого, используйте =АГРЕГАТ(4; 6; A1:A10) для МАКС (где 6 — параметр, игнорирующий ошибки).

4. Продвинутые логические функции: И, ИЛИ, НЕ

Когда нужно сравнить числа по нескольким критериям одновременно, на помощь приходят функции =И(), =ИЛИ() и =НЕ(). Они позволяют создавать сложные условия.

  • 🔗 =И(условие1; условие2; ...) — возвращает ИСТИНА, если все условия выполнены.
  • 🔗 =ИЛИ(условие1; условие2; ...) — возвращает ИСТИНА, если хоть одно условие выполнено.
  • 🔗 =НЕ(условие) — инвертирует результат (из ИСТИНА делает ЛОЖЬ и наоборот).

Примеры:

=И(A1>10; A1<100)  

=ИЛИ(B1="Да"; B1="Yes")

=ЕСЛИ(ИЛИ(A1<0; B1<0); "Есть отрицательные"; "Все положительные")

Критическая ошибка: многие пользователи путают функции И и ИЛИ, что приводит к неверным результатам. Например, формула =ЕСЛИ(И(A1>10; A1>20); "Больше 20"; "Меньше") всегда вернёт "Больше 20", если A1>20, но И(A1>10; A1>20) эквивалентно просто A1>20 (потому что второе условие строже).

1. Убедитесь, что условия не дублируют друг друга

2. Для диапазонов используйте И (все условия должны выполняться)

3. Для альтернативных вариантов — ИЛИ

4. Тестируйте формулу на крайних значениях (0, отрицательные числа, пустые ячейки)-->

5. Сравнение с учётом округления: функции ОКРУГЛ, ЦЕЛОЕ, ОТБР

Часто числа в Excel хранятся с большим количеством знаков после запятой, чем отображается на экране. Это может привести к ошибкам при сравнении. Например, 10,999999999 и 11 визуально выглядят как 11 и 11, но при сравнении =A1=B1 вернёт ЛОЖЬ.

Чтобы избежать этого, используйте функции округления:

  • 🔄 =ОКРУГЛ(число; количество_знаков) — округление до указанного знака.
  • 🔄 =ЦЕЛОЕ(число) — округление до ближайшего меньшего целого.
  • 🔄 =ОТБР(число; количество_знаков) — отбрасывание лишних знаков (без округления).

Пример: чтобы сравнить числа с точностью до двух знаков после запятой, используйте:

=ОКРУГЛ(A1; 2)=ОКРУГЛ(B1; 2)

Или более универсальный вариант с функцией =АБС() (модуль числа) для проверки разницы:

=АБС(A1-B1)<0,001  
⚠️ Внимание: Функция ЦЕЛОЕ всегда округляет вниз, даже если дробная часть больше 0,5. Например, =ЦЕЛОЕ(5,99) вернёт 5, а не 6. Для стандартного округления используйте ОКРУГЛ.

6. Сравнение текста, содержащего числа: функции ЗНАЧЕН, НАЙТИ, ПСТР

Иногда числа в Excel хранятся внутри текста (например, "Товар 15 кг" или "20% скидка"). Чтобы их сравнить, сначала нужно извлечь числовое значение. Для этого используйте комбинацию функций:

  • 🔢 =ЗНАЧЕН(текст) — преобразует строку в число (например, =ЗНАЧЕН("15") вернёт 15).
  • 🔢 =НАЙТИ(искомый_текст; текст; [нач_позиция]) — находит позицию символа в строке.
  • 🔢 =ПСТР(текст; нач_позиция; количество_символов) — извлекает подстроку.

Пример: допустим, в ячейке A1 текст "Вес: 25 кг". Чтобы извлечь число 25 и сравнить его с другим значением, используйте:

=ЗНАЧЕН(ПСТР(A1; НАЙТИ(" "; A1)+1; 2))

А затем сравните:

=ЕСЛИ(ЗНАЧЕН(ПСТР(A1; НАЙТИ(" "; A1)+1; 2))>20; "Тяжёлый"; "Лёгкий")

Альтернативный способ: если формат текста всегда одинаковый (например, "XX кг"), можно использовать функцию =ПРАВСИМВ() для извлечения последних символов:

=ЗНАЧЕН(ЛЕВСИМВ(A1; НАЙТИ(" "; A1)-1))  
Что делать, если ЗНАЧЕН возвращает ошибку #ЗНАЧ!

Ошибка #ЗНАЧ! возникает, если функция ЗНАЧЕН не может преобразовать текст в число. Это происходит, если:

1. В строке есть недопустимые символы (например, "15 кг" → нужно удалить " кг").

2. Текст содержит несколько чисел (например, "10 из 20").

3. Используются разделители, отличные от системных (например, точка вместо запятой в русскоязычной версии Excel).

Решение: предварительно очистите строку с помощью =ПОДСТАВИТЬ() или регулярных выражений (в Excel 365).

7. Динамическое сравнение: условное форматирование

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

Как настроить:

  1. Выделите диапазон ячеек (например, A1:A100).
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. Выберите тип правила: Форматировать только ячейки, которые содержат.
  4. В поле "Форматировать только ячейки с" выберите условие (например, "больше чем") и введите значение или укажите ячейку для сравнения.
  5. Нажмите Формат, выберите цвет заливки или шрифта, и сохраните правило.

Примеры правил:

  • 🎨 Выделить красным все числа <0 (отрицательные значения).
  • 🎨 Выделить зелёным ячейки, где значение >СРЗНАЧ($B$1:$B$100) (выше среднего).
  • 🎨 Выделить жёлтым ячейки, где разница между A1 и B1 больше 10%.

Для сложных условий используйте формулы в условном форматировании. Например, чтобы выделить строки, где значение в столбце A больше, чем в столбце B, но меньше, чем в C:

=И($A1>$B1; $A1<$C1)

Совет: если условное форматирование не применяется, проверьте, что в правиле указаны относительные ссылки (без $ перед номером строки, например A1, а не $A$1). Иначе правило будет применено только к первой ячейке диапазона.

- Дубликаты в списке (=СЧЁТЕСЛИ($A$1:$A$100; A1)>1)

- Топ-10 значений (=A1>=БОЛЬШЕ($A$1:$A$100; 10))

- Данные с отклонением от среднего более чем на 20% (=ABS(A1-СРЗНАЧ($A$1:$A$100))>0,2*СРЗНАЧ($A$1:$A$100))-->

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

🔹 Почему Excel неверно сравнивает числа с плавающей запятой?

Это связано с особенностями хранения чисел в двоичном формате. Например, 0,1 + 0,2 в Excel не равно 0,3, а равно 0,30000000000000004. Чтобы избежать ошибок, сравнивайте числа с округлением или используйте функцию =АБС(A1-B1)<0,000001.

🔹 Как сравнить числа в разных листах или книгах?

Укажите полный адрес ячейки, включая имя листа или книги. Например:

=ЕСЛИ(Лист2!A1>Лист1!B1; "Больше"; "Меньше")

=ЕСЛИ([Книга1.xlsx]Лист1!$A$1>100; "Высокое"; "Низкое")

Важно: если сравниваете данные из закрытой книги, Excel может не обновлять значения автоматически. Откройте исходный файл для актуализации данных.

🔹 Можно ли сравнить числа в Excel без формул?

Да, есть три способа:

  1. Сортировка: выделите диапазон и отсортируйте его по убыванию/возрастанию (Данные → Сортировка).
  2. Фильтр: примените автофильтр (Данные → Фильтр) и отфильтруйте значения по условию (например, "больше 50").
  3. Условное форматирование (раздел 7 этой статьи).

Однако формулы дают больше гибкости, особенно если нужно динамически обновлять результаты.

🔹 Как сравнить числа в Excel на равенство, игнорируя формат ячеек?

Формат ячеек (например, проценты, валюта) не влияет на фактическое значение, но может сбивать с толку. Чтобы сравнить "чистые" числа:

  1. Используйте =ЗНАЧЕН() для преобразования текста в число.
  2. Для процентов умножайте на 100: =A1*100=B1*100.
  3. Проверяйте формат ячеек: выделите диапазон и посмотрите в строке формул, как именно хранятся данные.
🔹 Почему формула =ЕСЛИ(A1=B1; "Да"; "Нет") возвращает "Нет", хотя числа визуально одинаковые?

Причины могут быть следующими:

  • В одной из ячеек хранится текст (например, "10" вместо 10). Проверьте с помощью =ТИП(A1) (вернёт 1 для чисел, 2 для текста).
  • Числа имеют разное количество знаков после запятой (см. раздел 5 про округление).
  • В ячейках есть скрытые символы (пробелы, неразрывные пробелы). Используйте =СЖПРОБЕЛЫ(A1) для очистки.