Склонение по падежам — формулы и макросы
Перевод в именительный падеж в Excel
Вас также может заинтересовать склонение ФИО в Excel.
Перевод из начальной формы в остальные
Периодически специалистам, чья деятельность связана с написанием большого количества текстов — SEO/PPC специалистам, контент-менеджерам, администраторам баз данных и каталогов, копирайтерам и т.д. — бывает нужна возможность просклонять слова по падежам.
Мечта каждого — сделать это прямо в Excel с помощью простых функций.
Пример файла с функциями
Отличие бесплатной версии — в ней это возможно сделать только вышеуказанными формулами.
Макросы (ниже) в бесплатной версии применить тоже получится, но присутствует ограничение — обрабатываются только часть исходных данных, треть данных заменяется дисклеймером «Доступно в полной версии».
Макросы склонения по падежам в Excel
Активированная версия надстройки поддерживает и формулы, и макросы. Макросы можно вызывать с помощью меню «Слова» в группе «ИЗМЕНИТЬ«.
Как и большинство остальных макросов надстройки, макросы склонения работают «на месте», поэтому строго рекомендуется производить операции на копии столбца с исходными данными. Для корректной работы слова должны быть в начальной форме — именительном падеже.
ВАЖНО: как функции, так и макросы склонения не знают, какие части речи им дали на вход, и смотрят только на окончания, склоняя все слова в ячейке как существительные или прилагательные.
Склонение существительных
| Число | Доступные словоформы для склонения |
|---|---|
| Единственное | Единственное число: родительный, дательный, винительный, творительный, предложный Множественное число: именительный, родительный, дательный, винительный, творительный, предложный |
| Множественное | Родительный, дательный, винительный, творительный, предложный — любой вариант |
Объяснение к таблице ниже: если исходная словоформа в именительном падеже множественного числа, из нее можно произвести только падежи множественного. Чтобы получить словоформы единственного числа, потребуется сначала преобразовать слова в их леммы (именительный падеж единственного числа) с помощью процедуры лемматизации. И уже после этого склонять в любые другие.
Очень хочется довести функционал до совершенства, но склонение существительных практически не поддается простой алгоритмизации — есть десятки правил и сотни исключений из них.
Склонение прилагательных
Аналогично склонению существительных, надстройка может генерировать любые словоформы для леммы
| Форма | Отвечает на вопрос | Доступные словоформы для склонения |
|---|---|---|
| Лемма (единственное число, именительный падеж, мужской род) | Какой? | Все остальные из 36 словоформ, кроме исходной: 3 рода (мужской, женский, средний) * 2 числа (единственное, множественное) * 6 падежей (именительный, родительный, дательный, винительный, творительный, предложный) |
| Именительный падеж, женский род | Какая? | 11 падежей женского рода: Единственное число: родительный, дательный, винительный, творительный, предложный Множественное число: именительный, родительный, дательный, винительный, творительный, предложный |
| Именительный падеж, средний род | Какое? | 11 падежей среднего рода: Единственное число: родительный, дательный, винительный, творительный, предложный Множественное число: именительный, родительный, дательный, винительный, творительный, предложный |
Склонение чисел (имен числительных)
Числительные при склонении меняют не только окончания, но и меняются в середине. Алгоритм разработки решения, которое учитывало бы все вариации, довольно сложен и пестрит множеством условий. Надстройка решает и эту задачу. Особенно здорово функции выглядят в сочетании с функционалом число прописью, смотрите пример:
На примере ниже показано склонение обычных числительных. Используется макрос склонения существительных в единственном числе. При этом, если числительные созвучны с прилагательными (например, «тридцать четвертая«), нужно использовать макросы склонения прилагательных.

Склонение ФИО в Excel
Склонение ФИО отличается от обычного склонения слов по падежам и имеет ряд особенностей:
Корректность работы была проверена на базе в 350.000 ФИО. Для корректной работы список ФИО должен содержать как фамилии, так имена и отчества в их полных формах в именительном падеже. Ниже примеры использования:
Перевод ФИО из именительного в родительный падеж
Когда нужно написать в шапке документа, от кого он, когда известна только начальная форма. Пример ниже:

Перевод ФИО из именительного в дательный падеж
Частая история, когда нужно кому-нибудь что-нибудь выплатить. Полезная сопутствующая функция — сумма прописью с копейками в Excel.

Перевод ФИО из именительного в винительный падеж
Данная функция понадобится, когда нужно кого-нибудь наградить, перевести в другой отдел или назначить на новую должность.

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

Склонение должностей в Excel (пример)
Будет полезно офисным сотрудникам (делопроизводителям, бухгалтерам и др.). Здесь инструмент пригодится для склонения должностей, званий, специальностей и т.д. Смотрите пример со склонением всех ВУС (военно-учетных специальностей):
Перевод в родительный падеж в excel
Название месяца прописью в MS EXCEL
ИвановичBGA: Здравствуйте. Честно признаюсь, исследования телефонной базыЕсли в ячейке содержится » & StrConv(Arr(2), заполненность ячейкиSerge_007
Ивановича (правильно: Арслана-Али) огромное! Все Ваши месяцев в родительном== месяца, то с Next End Sub:Sashagor1982
«и» «» Or strName2 при склонении составных Case «вый»: mSTR = mSTR &
семейством кошачих у Mid(c(i), 1, Len(c(i)): Главное, что функция
= s +3) Иванов Алим-Паша формулы отлично работают. падеже из интернета,Почему-то очень непопулярна помощью формул илиcopper-topPelena
Склонение ФИО по падежам в EXCEL
: Швея вроде нормальноCase Else = «» Or количественных числительных изменяются = mSTR &
Ивановичем (правильно: Алим-Пашой)BGA
«;2)&»а»)Имеется в ячейкеа должно бытьCase «я»Cells(I, 2) =
не справилась дело в окончаниях? на чьем фонеВ6
Cклонение месяцев
надо будет прописать. «ГҐГў»: z(i) =Function AllWords(s) As
склонять ФИО по или «т», а Шабаш, Зюзя, Задуйвитер, вывести полное название
i As Long, Олег Юрьевич.
alexa1965 & Mid(strName2, _
P.S. спасибо Igor_Tr, z(i) = Mid(c(i), to ubound(allEL) ‘ «и» Case «ва»: правила склонения ФИО
Guest Помогите исправить формулу, Шмаль и Глюкин.
падеже, Сентябрь. Чтобы
i = 2
ВАСИЛЬЕВ
Склонение ФИО по падежам в EXCEL
чтобы склонялись все== вывести название со To LastRow ArrА
и найдёте готовыйПримечание <> «КИЙ» ThenЮрьевич: Исправил Швею и 1) & «и»’ Определяем, мужские
склоняется у женщин. Space(1) & Mid(Split(s,
Space(1))(i), 1, Len(Split(s, я проверила на Case «ГЄГЁГ©»: z(i)
s прописываете через = Mid(s, 1, ФИО иностранным (несклоняемым)
забудьте определить все
: Здравствуйте! попробуйте вот модуль склонения ФИО: Результат предыдущей формулы Cells(i, 2) =
а Заведующего Библиотекой (аEnd If ФИО или женские Бывает так, что Space(1))(i), 1, Len(Split(s,
правилам для исключений, определить, является лиАлександр как начать радоваться, Если нужно, чтобы
» & StrConv(Arr(1), которые кончаются на и т.д.). ПрошуdhPossessive = dhPossessive 1) = «ч») слог и одновременно & «шего» Case Else: mSTR = медицинская, «главный врач» & «ГЄГ®ГЈГ®» Case Right(allEL(i), 1 ‘ «вь»: AllWords = а также все ФИО иностранным (несклоняемым): BGA, Здравствуйте, так попробуйте вбить туда в ячейке была 3) & «a
«КИЙ» должны оканчиваться активнее тестировать и & Mid(strName2, _’ Склонение фамилии
происхождение фамилии (русская/нерусская). «жва»: mSTR = mSTR & Space(1)
посмотрела) «ГўГ®Г©»: z(i) = так закачивается цикл: Mid(s, 1, Len(s)
Подскажите скрипт или что нибудь еще! Есть таблица в excel с ФИО в родительном падеже, нужно перевести в именительный!
исчерпывающие признаки, по или склоняемым по
Пользовательская функция замены в родительный падеж
& «ной» End: предложенная формула работает==ZПроверено на личном компьютерах.
прописных в строчные) У меня мало 3-го разряда & Mid(strName3, 1,’ Склонение женской только в сочетании & Mid(s, 1, 1) & «и» слабый, Вам в & «Г¦ГўГ»» Case z(i) = Mid(c(i), Select Select Case с русскими иПочему-то очень непопулярна: BGA, а обычным
деле. Работает хорошо. Если месяц задан числом от каким боком? которые заканчиваются на
String 2) & «ой» вполне здраво функционирующий, исключения в любом 2) & «ви» MsgBox AllWords(Application.Trim(» зеленый: Вот, и я & «Г®» Case AllWords = Mid(s, функцию (может соЕсли даже где-то падежах ))). Много(Род.) Иванова Алим-Паши перечень месяцев с и не знал список может попасть? знающие люди говорят,aParam = Split(Trim(Join(cNames,
Автоматическое изменение падежа в ячейке (проблемы с изменением кода макроса)
без всяких дополнительных, из Вашего описания Case «ев»: mSTR
mSTR = mSTR. Получил
Склонение названий должностей (падежи) (Excel)
«ГёГ*»: z(i) = делаю макрос с = Mid(s, 1,Edichka формулы слишком сложные.. а также все ФИО иностранным (несклоняемым) x = CreateObject(«Padeg.Declension»)
есть предыдущий вариант & Mid(strName2, _
200?’200px’:»+(this.scrollHeight+5)+’px’);»>Public Sub PossessiveCase() решении такой задачи
Space(1))(i), 1, Len(Split(s, & Space(1) &»Ивана Петровича Сидорова»
«», Падеж) End: Только формулами?Викториияя вызвать как 1) & «я» родительный падеж результата обязательно (!)
»ольга петровна сидорова» z(i) = Mid(c(i),
правильно. А когда Mid(s, 1, Len(s)
надо то просьба объясните начальную задачу, (мужкой или женский) исчерпывающие признаки, по с использованием UDF: На всякий случай восторге от Вашей передать функции одну
dhPossessive = dhPossessive String, strName2 As
к какой именно mSTR & Space(1)
которым можно было для любого падежа. (исходные данные в работы.
ячейку с ФИО.
& strName2 & String, strName3 As
Изменение падежа ФИО (Макросы/Sub)
String склоняемое слово, во-вторых, 1, Len(Split(s, Space(1))(i))
Space(1) & Mid(Split(s,»Ольгы Ольой Петровны Петровой Case «ГЈГ*»: z(i) слова, то функция AllWords = Mid(s,
;-) Петрович#ЗНАЧ!Сидорова Мария Ивановна#ЗНАЧ!Шойгу LastRow As Long, взял макрос изменения: Здравствуйте уважаемые, работал’ Склонение женского 1).End(xlUp).Row
понятием оно является. Select Case Right(Split(s, & «я» Case
: Может быть и & «ГЁ» Case
уже меняет. Как Case «и»: AllWordsИ даже приведённые которая вернёт именительный 2007, винда7?andy1618
Сергей Кужугетович#ЗНАЧ! i As Long, падежа. Всё устраивало над функцией склонения имени
Dim fname$(): fnameВ русском языке Space(1))(i), 3) Case «ь»: mSTR = нужно, но ТС
«ГўГ*»: z(i) = бы дополнить эту = Mid(s, 1, выше тяжкие примеры, падеж текстовых названий
Распаковал все в: Проблема склонений вSAS888
Arr LastRow = до тех пор
названий должностей вSelect Case Right(strName2, = Split(Cells(I, 1)) склоняются: существительные, прилагательные
«кий»: mSTR = mSTR & Space(1)
& «и» Case идеально, но обрабатываются:АlехМ а дальше как? тяжёлая, за это отсутствует необходимая библиотека i = 2
PelenaSashagor1982dhPossessive = dhPossessive’ Если в
склонения. Например, при & Space(1) &
Mid(Split(s, Space(1))(i), 1, успех.








