Как в Excel проставить 5, если число больше 0 и меньше 39: 3 проверенных метода

Задача автоматически заполнять ячейки числом 5, когда исходное значение попадает в диапазон больше 0 и меньше 39, встречается в бухгалтерии (например, для округления расходов), образовательных системах (оценки по шкале) или при обработке анкетных данных. В Microsoft Excel и Google Таблицах эту логику можно реализовать минимум тремя способами — от простейшей функции ЕСЛИ до продвинутых инструментов вроде Power Query.

Многие пользователи ошибочно пытаются решить задачу через условное форматирование, но оно меняет только внешний вид ячейки, а не её значение. Другие используют вложенные ЕСЛИ с избыточными проверками, что усложняет формулу и замедляет расчёты. В этой статье — оптимальные решения с пояснениями, когда какое применять, а также типичные ошибки и способы их избежать.

———

1. Классический метод: функция ЕСЛИ с одним условием

Самый универсальный способ — использовать функцию ЕСЛИ (IF в английской версии). Она проверяет заданное условие и возвращает одно значение, если условие истинно, и другое — если ложно. Для нашей задачи формула примет вид:

```excel

=ЕСЛИ(И(A1>0; A1<39); 5; A1)

```

или в английской нотации:

```excel

=IF(AND(A1>0, A1<39), 5, A1)

```

Здесь И(A1>0; A1<39) проверяет, что значение в ячейке A1 одновременно больше 0 и меньше 39. Если да — возвращает 5, иначе оставляет исходное значение (A1).

Плюсы метода:

  • 🔹 Работает во всех версиях Excel (включая Excel 2003 и Google Таблицы)
  • 🔹 Легко модифицировать (например, добавить ещё одно условие)
  • 🔹 Не требует дополнительных надстроек

Минусы:

  • 🚫 При большом количестве строк может замедлять пересчёт
  • 🚫 Не подходит для динамических диапазонов (требуется копировать формулу)

———

2. Продвинутая логика: функция ЕСЛИМН для нескольких условий

Если вам нужно обрабатывать несколько диапазонов (например, проставлять 5 для 0–39, 10 для 40–69 и т.д.), удобнее использовать ЕСЛИМН (IFS в английской версии). Эта функция появилась в Excel 2019 и доступна в Excel 365, Excel 2021, а также в Google Таблицах.

Пример формулы для трёх диапазонов:

```excel

=ЕСЛИМН(

И(A1>0; A1<39); 5;

И(A1>=40; A1<69); 10;

И(A1>=70); 15;

ИСТИНА; A1

)

```

или в английской версии:

```excel

=IFS(

AND(A1>0, A1<39), 5,

AND(A1>=40, A1<69), 10,

A1>=70, 15,

TRUE, A1

)

```

🔹 Почему это лучше, чем вложенные ЕСЛИ?

Вложенные ЕСЛИ сложно читать и редактировать, особенно если условий больше 3–4. ЕСЛИМН делает логику прозрачной и уменьшает риск ошибок.

⚠️ Внимание:

В Excel 2016 и более ранних версиях ЕСЛИМН недоступна. В этом случае используйте вложенные ЕСЛИ или обновите программу. Альтернатива — функция ВЫБОР (CHOOSE), но она менее гибкая для диапазонов.

———

📊 Какой версии Excel вы пользуетесь?
Excel 2010 или старше
Excel 2013–2016
Excel 2019–2021
Excel 365 (подписка)
Google Таблицы

3. Автоматизация через Power Query: для больших данных

Если вам нужно обработать тысячи строк или регулярно обновлять данные, ручное прописывание формул неэффективно. В этом случае поможет Power Query — инструмент для преобразования данных, встроенный в Excel 2016+ и Excel 365.

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

  1. Выделите исходный диапазон данных.
  2. Перейдите на вкладку ДанныеИз таблицы/диапазона (или Get Data → From Table/Range в английской версии).
  3. В открывшемся редакторе Power Query выберите столбец с числами.
  4. Нажмите Добавить столбец → Пользовательский столбец (Add Column → Custom Column).
  5. Введите формулу:

    ```excel

    if [Column1] > 0 and [Column1] < 39 then 5 else [Column1]

    ```

    (замените Column1 на имя вашего столбца).

  6. Нажмите Закрыть и загрузить (Close & Load).

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

  • 📊 Обрабатывает миллионы строк без замедления
  • 🔄 Легко обновлять данные (достаточно нажать Обновить)
  • 🛠️ Позволяет добавлять другие преобразования (фильтрация, сортировка)

⚠️ Внимание:

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

———

Убедиться, что данные в виде таблицы (Ctrl+T)

Проверить отсутствие пустых ячеек в ключевом столбце

Сохранить резервную копию файла

Запомнить имя столбца для формулы

-->

4. Альтернативные методы: условное форматирование и VBA

Хотя условное форматирование не меняет значения ячеек, его можно использовать для визуальной подсказки. Например, выделить красным все числа от 0 до 39, чтобы потом вручную проставить 5.

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

  1. Выделите диапазон ячеек.
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. Выберите Использовать формулу для определения форматируемых ячеек.
  4. Введите формулу:

    ```excel

    =И(A1>0; A1<39)

    ```

  5. Задайте формат (например, красный фон) и нажмите ОК.

🔹 Когда это уместно?

  • 🎨 Для визуального анализа данных перед ручной правкой
  • 📌 Если нужно отметить ячейки, но не менять их значения

🚀 Для автоматизации можно написать макрос на VBA:

```vba

Sub ReplaceWithFive()

Dim cell As Range

For Each cell In Selection

If cell.Value > 0 And cell.Value < 39 Then

cell.Value = 5

End If

Next cell

End Sub

```

Как использовать
: выделите диапазон → запустите макрос (Alt+F8 → выберите ReplaceWithFiveВыполнить).

⚠️ Внимание:

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

———

5. Типичные ошибки и как их избежать

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

Ошибка Причина Как исправить
Формула возвращает #ИМЯ? Опечатка в названии функции (например, ЕСЛИИ вместо ЕСЛИ) Проверьте синтаксис. В английской версии используйте IF, AND
Не срабатывает условие для чисел с запятой Excel воспринимает 39,5 как текст, если используется запятая вместо точки Замените запятые на точки или настройте региональные параметры
Формула копируется неправильно Абсолютные/относительные ссылки ($A$1 vs A1) Используйте =ЕСЛИ(И(A1>0; A1<39); 5; A1) и растягивайте вниз
Условие не работает для пустых ячеек Функция И возвращает ЛОЖЬ для пустот Добавьте проверку ЕПУСТО: =ЕСЛИ(ИЛИ(ЕПУСТО(A1); И(A1>0; A1<39)); 5; A1)
Медленный пересчёт при большом объёме данных Слишком много формул или вложенных ЕСЛИ Перейдите на Power Query или оптимизируйте формулы

🔍 Как проверить формулу?

Выделите ячейку с результатом → перейдите на вкладку ФормулыВычислить формулу (Evaluate Formula). Это поможет увидеть, на каком этапе происходит ошибка.

———

Почему функция ИСТИНА в конце ЕСЛИМН обязательна?

Без завершающего условия ИСТИНА (или TRUE) функция ЕСЛИМН вернёт ошибку #Н/Д, если ни одно из предыдущих условий не сработает. Это условие играет роль "else" — оно возвращает исходное значение, если диапазоны не подходят.

6. Примеры применения на практике

Разберём реальные кейсы, где такое условие полезно:

📌 1. Обработка опросов: Задача: В анкете респонденты указывают возраст. Нужно заменить все значения от 0 до 39 на 5 (код группы "молодёжь"). Решение:

```excel

=ЕСЛИ(И(B2>0; B2<39); 5; ЕСЛИ(B2=""; ""; B2))

```

(дополнительно учитываем пустые ячейки).

📌 2. Бухгалтерские округления: Задача: В отчёте расходы до 39 рублей округляются до 5 для упрощения. Решение:

```excel

=ЕСЛИ(И(C3>0; C3<39); 5; ОКРУГЛ(C3; 0))

```

📌 3. Школьные оценки: Задача: Перевести баллы теста в оценку: 0–39 → 2, 40–69 → 3, и т.д. Решение:

```excel

=ЕСЛИМН(

И(D4>=0; D4<39); 2;

И(D4>=40; D4<69); 3;

И(D4>=70; D4<89); 4;

D4>=90; 5

)

```

💡 Полезный совет:

———

7. Сравнение методов: какой выбрать?

Выбор способа зависит от объёма данных, версии Excel и частоты обновлений. Ниже — сравнительная таблица:

Метод Сложность Скорость Когда использовать
ЕСЛИ + И ⭐ (просто) ⚡⚡ (средняя) Малые данные, разовые задачи
ЕСЛИМН ⭐⭐ (средне) ⚡⚡ (средняя) Несколько диапазонов, Excel 2019+
Power Query ⭐⭐⭐ (сложно) ⚡⚡⚡ (быстро) Большие данные, регулярные обновления
Условное форматирование ⭐ (просто) ⚡⚡⚡ (мгновенно) Только для визуальной подсказки
VBA-макрос ⭐⭐⭐ (сложно) ⚡⚡⚡⚡ (очень быстро) Автоматизация повторяющихся задач

🔑 Ключевой вывод:

———

FAQ: Частые вопросы

Можно ли использовать эту формулу в Google Таблицах?

Да, синтаксис идентичен Excel. В Google Таблицах также работают:

  • =IF(AND(A1>0, A1<39), 5, A1)
  • =IFS(AND(A1>0, A1<39), 5, TRUE, A1)

Обратите внимание: в некоторых локалях вместо запятой (,) используется точка с запятой (;) как разделитель аргументов.

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

Добавьте проверку на тип данных с помощью ЕЧИСЛО (ISNUMBER):

```excel

=ЕСЛИ(И(ЕЧИСЛО(A1); A1>0; A1<39); 5; A1)

```

Если в ячейке текст (например, "Н/Д"), формула вернёт его без изменений.

Почему моя формула не работает с датами?

Excel хранит даты как числа (например, 01.01.2023 = 44927). Если вы сравниваете дату с числом (39), условие никогда не сработает.

🔹 Решение: используйте функции для работы с датами, например:

```excel

=ЕСЛИ(И(A1>ДАТА(2023;1;1); A1<ДАТА(2023;12;31)); 5; A1)

```

или сравнивайте с другим числовым эквивалентом даты.

Можно ли применить это условие ко всему столбцу без копирования формулы?

Да, есть два способа:

  1. Преобразуйте диапазон в умную таблицу (Ctrl+T). Формула автоматически растягивается на новые строки.
  2. Используйте динамический массивExcel 365):

    ```excel

    =ЕСЛИ(И(A1:A100>0; A1:A100<39); 5; A1:A100)

    ```

    Формула заполнит сразу весь диапазон A1:A100.

Как сделать обратное условие: проставить 5, если НЕ в диапазоне 0–39?

Используйте оператор НЕ (NOT):

```excel

=ЕСЛИ(НЕ(И(A1>0; A1<39)); 5; A1)

```

или упрощённо:

```excel

=ЕСЛИ(ИЛИ(A1<=0; A1>=39); 5; A1)

```