Склонение слов в Microsoft Excel — задача, с которой сталкиваются бухгалтеры, маркетологи и аналитики при работе с русскоязычными данными. Некорректные падежные формы в отчетах, договорах или рассылках портят профессиональное впечатление и могут искажать смысл. Например, автоматически сгенерированная фраза "Оплатить заказ Иванова Ивана" звучит грамматически неверно — правильно было бы "Оплатить заказ Иванову Ивану".
В этой статье мы разберём 5 практических методов склонения слов в Excel — от простых формул до автоматизации через VBA. Вы узнаете, как адаптировать склонение под фамилии, имена, числительные и даже сложные конструкции типа "23 рубля 50 копеек". Все решения протестированы на Excel 2019–2026 и Microsoft 365.
Важно: склонение в Excel не поддерживается "из коробки" — придётся использовать обходные пути. Но после настройки система будет работать автоматически, экономя часы ручного редактирования.
1. Склонение с помощью функции ПРОПНАЧ и ручных правил
Самый простой способ — заменить окончания вручную с использованием функции ПРОПНАЧ (или PROPER в английской версии). Метод подходит для небольших списков фамилий или имен, где падежные формы предсказуемы.
Пример: нужно просклонять фамилию "Иванов" в дательный падеж ("Иванову").
- Создайте столбец с исходными фамилиями (например,
A2:A100). - В соседнем столбце используйте формулу:
=ЕСЛИ(ПРАВСИМВ(A2;1)="в"; ПРОПНАЧ(ЛЕВСИМВ(A2;ДЛСТР(A2)-1)&"у"); "Ошибка")Здесь мы проверяем окончание "-в" и заменяем его на "-у", сохраняя регистр.
⚠️ Внимание: Этот метод работает только для фамилий с окончанием на "-ов/ев" (Петров → Петрову). Для фамилий на "-ий" (Гений → Гению) или "-а" (Синица → Синице) потребуются дополнительные условия в формуле.
- ✅ Подходит для: коротких списков с однотипными фамилиями.
- ❌ Не подходит для: имён, отчеств, числительных или фамилий с мягким знаком ("Ткач" → "Ткачу").
2. Использование таблицы соответствий падежей
Более универсальный метод — создать справочную таблицу со всеми формами слова и подтягивать их через ВПР (или XLOOKUP в новых версиях Excel). Это позволит обрабатывать даже сложные случаи, например, склонение имён типа "Лев" (Р.п. — "Льва", Д.п. — "Льву").
Алгоритм:
- Создайте на отдельном листе таблицу с 6 столбцами:
Именительный,Родительный,Дательныйи т.д. Заполните её всеми формами слов (см. пример ниже). - В основной таблице используйте формулу:
=ВПР(A2; Справочник!A:F; 3; ЛОЖЬ)где
A2— ячейка с исходным словом,3— номер столбца с нужным падежом (дательный),Справочник!A:F— диапазон справочной таблицы.
| Именительный | Родительный | Дательный | Винительный | Творительный | Предложный |
|---|---|---|---|---|---|
| Иванов | Иванова | Иванову | Иванова | Ивановым | Иванове |
| Петрова | Петровой | Петровой | Петрову | Петровой | Петровой |
| Сидоренко | Сидоренко | Сидоренко | Сидоренко | Сидоренко | Сидоренко |
⚠️ Внимание: Для фамилий с альтернативными формами (например, "Савельев" → "Савельеву" или "Савельевым") добавьте в справочник обе версии и используйте ВПР с приблизительным совпадением (ИСТИНА вместо ЛОЖЬ).
Создать отдельный лист "Справочник"
Заполнить все 6 падежей для каждого слова
Проверить орфографию (особенно творительный падеж)
Сортировать данные по алфавиту для ускорения ВПР
-->
3. Склонение числительных (1 рубль, 2 рубля, 5 рублей)
Склонение числительных — отдельная головная боль. В русском языке слова "рубль", "доллар" или "день" меняют форму в зависимости от числа: "1 день", но "2 дня" и "5 дней". В Excel это решается комбинацией функций ЕСЛИ, И, ОСТАТ.
Формула для склонения слова "рубль":
=ЕСЛИ(ИЛИ(ОСТАТ(A2;100)>10; ОСТАТ(A2;100)<5); ЕСЛИ(ОСТАТ(A2;10)=1; "рубль"; "рубля"); "рублей")
где A2 — ячейка с числом.
Для других валют или единиц измерения замените "рубль/рубля/рублей" на нужные формы (например, "доллар/доллара/долларов").
- 💰 Для копеек: используйте ту же логику, но с проверкой на
ОСТАТ(A2*100;100)(так как копейки — это дробная часть). - ⏳ Для дней/лет: формула идентична, но формы будут "день/дня/дней" или "год/года/лет".
- ⚠️ Исключение: числа 11–19 всегда требуют форму множественного числа ("11 рублей", а не "11 рубля").
Как склонять "человек" (1 человек, 2 человека, 5 человек)
Формула будет такой же, но с формами "человек/человека/человек" (так как слово "человек" в родительном падеже множественного числа совпадает с именительным).
=ЕСЛИ(ИЛИ(ОСТАТ(A2;100)>10; ОСТАТ(A2;100)<5); ЕСЛИ(ОСТАТ(A2;10)=1; "человек"; "человека"); "человек")
Ежедневно
Несколько раз в неделю
Редико (1-2 раза в месяц)
Никогда не приходилось-->
4. Автоматизация через VBA: функция склонения
Для продвинутых пользователей лучшее решение — написать собственную функцию на VBA. Это позволит склонять слова прямо в ячейках, как стандартную функцию СУММ.
Шаги для создания функции:
можно использовать формулу Alt + F11, чтобы открыть редактор VBA.Insert → Module).=Склонировать(A2; "Д"), где A2 — ячейка со словом, а "Д" — код падежа (И/Р/Д/В/Т/П).
Код функции для склонения фамилий:
Function Склонировать(Слово As String, Падеж As String) As String
Dim Справочник As Variant
Справочник = Array( _
Array("ов", "а", "у", "а", "ым", "е"), _
Array("ев", "а", "у", "а", "ым", "е"), _
Array("ин", "а", "у", "а", "ым", "е"), _
Array("ий", "я", "ю", "я", "ем", "е") _
)
Dim Окончание As String, i As Integer, j As Integer
Окончание = Right(Слово, 2)
For i = 0 To UBound(Справочник)
If Right(Слово, Len(Справочник(i)(0))) = Справочник(i)(0) Then
Select Case Падеж
Case "И": Склонировать = Слово
Case "Р": Склонировать = Left(Слово, Len(Слово) - Len(Справочник(i)(0))) & Справочник(i)(1)
Case "Д": Склонировать = Left(Слово, Len(Слово) - Len(Справочник(i)(0))) & Справочник(i)(2)
' Аналогично для В/Т/П
End Select
Exit Function
End If
Next i
Склонировать = "Ошибка: правило не найдено"
End Function
⚠️ Внимание: Этот код покрывает только фамилии с окончаниями "-ов", "-ев", "-ин", "-ий". Для других случаев (например, украинские фамилии на "-ко") нужно расширять массив Если вам нужно склонять тысячи слов с учётом всех правил русского языка, проще воспользоваться готовыми надстройками. Два проверенных решения:
Ответ будет в формате JSON со всеми падежами.Справочник.
5. Надстройки для склонения (Morpher, ExcelMorph)
Power Query или VBA. Пример запроса:
https://ws3.morpher.ru/russian/declension?s=Иванов&format=json
=МОРФ(текст; падеж). Поддерживает фамилии, имена, отчества и числительные.Как подключить Morpher.ru через Power Query:
- Перейдите в
Данные → Получить данные → Из других источников → Из веб. - Вставьте URL вида
https://ws3.morpher.ru/russian/declension?s=и укажите ячейку со словом (например,=A2). - Преобразуйте ответ в таблицу и извлеките нужный падеж.
⚠️ Внимание: При использовании Morpher.ru учитывайте ограничение на количество запросов (1 000 в час для бесплатного тарифа). Для больших объёмов данных лучше кешировать результаты в Excel.
6. Склонение ФИО: сложные случаи и исключения
Склонение полных ФИО (фамилия + имя + отчество) — одна из самых сложных задач. Здесь важно учитывать:
- 👤 Имена: "Александр" → "Александру", но "Екатерина" → "Екатерине".
- 👨 Отчества: "Иванович" → "Ивановичу", "Сергеевна" → "Сергеевне".
- ⚠️ Исключения: Фамилии на "-ых" ("Черных") или "-их" ("Белых") не склоняются в женском роде.
Решение: Используйте комбинацию методов:
- Разбейте ФИО на отдельные столбцы с помощью
ТЕКСТ.ПОСЛЕ(илиTEXTBEFOREв Excel 365). - Склоните каждую часть отдельно (фамилию — через VBA, имя/отчество — через справочную таблицу).
- Объедините результаты с помощью
СЦЕПИТЬилиCONCAT.
Критичная деталь: при склонении отчеств мужского рода на "-ич" (Ильич, Кузьмич) в творительном падеже используется окончание "-ем" ("Ильичем"), а не "-ом" как в фамилиях.
| Именительный | Дательный | Творительный |
|---|---|---|
| Иванов Александр Сергеевич | Иванову Александру Сергеевичу | Ивановым Александром Сергеевичем |
| Петрова Мария Ивановна | Петровой Марии Ивановне | Петровой Марией Ивановной |
| Сидоренко Ольга Николаевна | Сидоренко Ольге Николаевне | Сидоренко Ольгой Николаевной |
FAQ: Частые вопросы по склонению в Excel
Можно ли склонять слова на украинском или белорусском языке?
Да, но потребуется адаптировать правила. Для украинского языка используйте сервис mova.in.ua или создайте отдельные справочные таблицы с учётом окончаний "-ко", "-енко" (например, "Шевченко" не склоняется).
Почему функция ВПР не находит слово в справочнике?
Вероятные причины:
- Лишние пробелы в ячейке (используйте
СЖПРОБЕЛЫ). - Разный регистр (приведите текст к нижнему регистру через
НИЖНИЙРЕГ). - Опечатки в справочной таблице.
Как склонять аббревиатуры (ООО, ЗАО, ФГУП)?
Аббревиатуры не склоняются: "в ООО 'Ромашка'", "для ЗАО 'Весна'". Исключение — аббревиатуры, которые читаются как слова (например, "вуз" → "в вузе").
Можно ли склонять слова автоматически при импорте данных?
Да, используйте Power Query:
- Импортируйте данные через
Данные → Получить данные. - Добавьте пользовательский столбец с формулой склонения (например, через Morpher API).
- Загрузите данные обратно в Excel.
Как склонять слова в Google Таблицах?
В Google Sheets используйте:
- Функцию
=IMPORTDATAдля запросов к Morpher.ru. - Надстройку RuMorpher (бесплатно).