Как вставить знак «меньше» (<) в формулу Excel без ошибок

Работа с логическими операторами в Microsoft Excel часто сталкивается с неожиданными трудностями — одна из них возникает при попытке ввести знак «меньше» (<) в формулу. Пользователи сталкиваются с ошибкой #ИМЯ? или #ЗНАЧ!, а иногда символ просто исчезает после нажатия Enter. Причина кроется в том, что Excel интерпретирует знак «<» как начало HTML-тега или оператора сравнения, если он не экранирован правильно.

Проблема усложняется, когда знак «<» нужно использовать внутри текстовой строки, условного форматирования или сложных логических выражений. Например, при создании формулы для проверки email-адресов (где символ «<» является частью синтаксиса) или при работе с регулярными выражениями через Power Query. Даже опытные пользователи иногда тратят часы на поиск решения, пробуя обернуть символ в кавычки или использовать двойные апострофы — что работает далеко не всегда.

В этой статье мы разберём 5 проверенных способов вставить знак «<» в формулу Excel, включая экранирование, функции текстового форматирования и обходные пути для специфических задач. Вы также узнаете, почему некоторые методы перестают работать в новых версиях Excel 365 и как адаптировать их под Google Sheets.

Почему Excel «съедает» знак «<» в формулах?

Проблема с вводом символа «<» в формулах Excel связана с конфликтом синтаксиса. Программа воспринимает этот знак как:

  • 🔹 Оператор сравнения (например, =A1 — проверка, меньше ли значение в A1 значения в B1).
  • 🔹 Начало HTML-тега (если формула используется в веб-экспорте или Power Query).
  • 🔹 Специальный символ в некоторых локалях (например, в немецкой версии Excel знак «<» может конфликтовать с форматом дат).

Когда вы пытаетесь ввести «<» как часть текстовой строки (например, ="5 < 10"), Excel автоматически преобразует его в оператор сравнения, что приводит к ошибке. Например, формула =CONCATENATE("A", "<", "B") может вернуть #ЗНАЧ!, если не экранирована правильно.

Дополнительная сложность возникает в Excel Online и Google Sheets, где обработка символов может отличаться. Например, в Google Sheets знак «<» в формуле =REGEXMATCH(A1, "<") требует двойного экранирования, иначе возвращает #ERROR!.

⚠️ Внимание: В версиях Excel 2016 и старше знак «<» может конфликтовать с динамическими массивами, если используется внутри функций FILTER или SORT. В этом случае рекомендуется заменять его на CHAR(60).

Способ 1: Экранирование с помощью функции CHAR

Самый надёжный способ вставить знак «<» в формулу — использовать функцию CHAR(60), которая возвращает символ по его коду ASCII. Этот метод работает во всех версиях Excel, включая Excel 365 и Google Sheets.

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

  • 📌 Простое отображение: =CHAR(60) — вернёт символ «<».
  • 📌 В текстовой строке: =CONCATENATE("Значение ", CHAR(60), " 5")Значение < 5.
  • 📌 В условном форматировании: Правило формулы может выглядеть как =AND(A1>0, A1 (хотя такой синтаксис редко применяется).

Преимущество метода в том, что CHAR(60) никогда не конфликтует с операторами сравнения. Например, формула =IF(A1 корректно обработает текстовое сравнение, тогда как прямая запись ="A1<10" приведёт к ошибке.

Убедитесь, что ячейка не в формате "Текст"|Проверьте отсутствие пробелов перед CHAR|Используйте & для конкатенации, а не CONCATENATE (в новых версиях Excel)|Тестируйте формулу в отдельной ячейке перед применением в массиве-->

Задача Формула с CHAR(60) Результат
Отобразить знак «<» =CHAR(60) <
Текст с сравнением ="5" & CHAR(60) & "10" 5<10
Условное форматирование =A1 Применит формат, если A1 < 50
Поиск символа в тексте =FIND(CHAR(60), A1) Вернёт позицию «<» в ячейке A1
⚠️ Внимание: В Excel для Mac функция CHAR может возвращать непечатаемые символы, если используется в комбинации с UNICHAR. Чтобы избежать этого, проверяйте результат через =CODE(CHAR(60)) — он должен вернуть 60.

Способ 2: Двойные кавычки и конкатенация

Если знак «<» нужно вставить в текстовую строку, его можно обернуть в кавычки и соединить с другими частями формулы через амперсанд (&). Этот метод подходит для создания динамических надписей или условных сообщений.

Примеры:

= "Результат: " & "<" & " 100"  →  Результат: < 100

= IF(A1<50, "Значение " & "<" & " 50", "Значение >= 50")

Однако у этого способа есть ограничения:

  • ❌ Не работает внутри функций, ожидающих числовые значения (например, SUM или AVERAGE).
  • ❌ Может вызвать ошибку #ЗНАЧ!, если знак «<» стоит в начале строки без пробела (например, ="<5").

Для надёжности комбинируйте этот метод с CHAR(60):

= "Сравнение: " & CHAR(60) & " (меньше)"

Способ 3: Использование функции UNICHAR (для Unicode)

В современных версиях Excel (начиная с 2013) доступна функция UNICHAR, которая работает с Unicode-символами. Для знака «<» её синтаксис идентичен CHAR(60), но она поддерживает более широкий диапазон символов (например, математические знаки «⩽» или «≺»).

Примеры:

=UNICHAR(60)  →  <

=UNICHAR(8804) → ⩽ (меньше или равно)

Где это пригодится:

  • 🔢 Математические формулы: Отображение символов «≤», «≥» в отчётах.
  • 📊 Условное форматирование: Создание правил с Unicode-символами (например, =UNICHAR(8594) для стрелки «→»).
  • 🌍 Многоязычные документы: Вставка символов, отсутствующих на клавиатуре (например, «≪» или «≫»).

Критичный нюанс: В Excel 2016 и старше UNICHAR может конфликтовать с региональными настройками. Если функция возвращает #ИМЯ?, проверьте язык интерфейса — он должен быть английским или русским (не немецким/французским).

CHAR(60)|Двойные кавычки и &|UNICHAR|Ручной ввод в текстовой ячейке-->

Способ 4: Вставка через текстовую ячейку (обходной путь)

Если формула упорно не принимает знак «<», можно пойти на хитрость:

  1. Введите символ «<» в отдельную ячейку (например, B1) и отформатируйте её как текст.
  2. В формуле ссылайтесь на эту ячейку: =A1 & B1 & "100".

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

  • 📝 Шаблонов отчётов, где знак «<» используется многократно.
  • 🔄 Динамических формул, где символ меняется в зависимости от условия.

Пример:

Ячейка B1: < (отформатирована как текст)

Формула: =IF(A1<50, "Меньше " & B1 & " 50", "Больше")

⚠️ Внимание: Если ячейка с «<» случайно переформатируется в «Общий» или «Числовой» формат, Excel может воспринять её как 0 (пустое значение). Чтобы избежать этого, добавьте перед символом апостроф: '<.
Почему Excel иногда преобразует "<" в "0"?

Это происходит из-за автоматического приведения типов. Excel пытается интерпретировать содержимое ячейки как число, а поскольку "<" не является числом, оно заменяется на 0. Чтобы отключить это поведение, используйте формат "Текст" или добавляйте апостроф перед символом.

Способ 5: Power Query и VBA (для продвинутых пользователей)

Если вам нужно вставить «<» в запросы Power Query или макросы VBA, потребуются специальные подходы:

В Power Query:

Используйте двойные кавычки и экранирование:

// В редакторе Power Query

= Table.AddColumn(Источник, "Сравнение", each [Значение] & "<" & 100)

Или через Character.FromNumber(60):

= Character.FromNumber(60) // Вернёт "<"

В VBA:

Символ «<» вставляется напрямую, но в строках его нужно экранировать:

Sub Test()

Dim str As String

str = "Значение " & "<" & " 10" ' Работает

' Или:

str = "Значение " & Chr(60) & " 10" ' Надёжнее

MsgBox str

End Sub

В Power Query знак «<» может конфликтовать с синтаксисом M-языка, если используется в фильтрах. Например, запрос:

= Table.SelectRows(Источник, each [Столбец] < 50)

будет работать, а вот:

= Table.SelectRows(Источник, each [Столбец] & "<" & 50)

— требует экранирования через Character.FromNumber(60).

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

Даже опытные пользователи допускают ошибки при работе со знаком «<» в Excel. Вот самые распространённые:

Ошибка Причина Решение
#ИМЯ? Excel воспринимает «<» как начало функции или тега. Используйте CHAR(60) или оберните в кавычки.
#ЗНАЧ! Конфликт с оператором сравнения (например, ="5<10"). Замените на ="5" & CHAR(60) & "10".
Символ исчезает Ячейка в формате «Общий» или «Числовой». Установите формат «Текст» или добавьте апостроф.
Ошибка в Google Sheets Двойное экранирование не работает. Используйте =CHAR(60) или =UNICHAR(60).

Особое внимание уделите условному форматированию. Если правило содержит знак «<», его нужно вводить через:

  1. Формулу с CHAR(60) (например, =A1).
  2. Текстовую ячейку-ссылку (как в Способе 4).

В Excel 365 с динамическими массивами знак «<» может вызывать ошибку #СПИЛЛ!, если используется внутри FILTER или SORTBY. Решение — оборачивать его в TEXT:

=FILTER(A1:A10, TEXT(B1:B10, "0") < 50)

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

Можно ли ввести знак «<» напрямую в формулу без CHAR?

Да, но только если он является частью текстовой строки в кавычках и не конфликтует с операторами. Например, ="A < B" сработает, а =A1 — нет (это сравнение). Для надёжности используйте CHAR(60).

Почему в Excel 2019 знак «<» отображается как «<»?

Это происходит при экспорте данных в HTML или XML. Excel автоматически экранирует символы для веб-совместимости. Чтобы вернуть нормальное отображение, используйте =SUBSTITUTE(A1, "<", CHAR(60)).

Как вставить «<» в название листа?

Excel запрещает использовать символы \ / * ? : [ ] и «<», «>» в именах листов. Обходной путь — использовать CHAR(60) в ячейке и ссылаться на неё в формулах, но сам лист переименовать нельзя.

Работает ли CHAR(60) в Google Sheets?

Да, Google Sheets поддерживает CHAR(60) и UNICHAR(60). Однако в некоторых локалях (например, немецкой) может потребоваться замена на =CODE("<") для корректного отображения.

Можно ли использовать «<» в именованных диапазонах?

Нет, Excel не позволяет использовать символы «<», «>», «&» и другие специальные знаки в именах диапазонов. Альтернатива — создать именованную формулу с CHAR(60).