Одной из самых используемых функций при работе с любым текстом является изменение регистра букв в слове. В программе Word это легко можно сделать с помощью горячих клавиш Shift+F3. Однако такой, на первый взгляд, полезной функции нельзя найти в Excel. И совершенно непонятно, почему уже в стольких версиях Excel нет подобной функциональности.
Для решения этой проблемы можно воспользоваться следующими способами:
- Установка дополнительных надстроек (Add-ins) для Excel
- Создание макроса по изменению регистра текста и установка в личную книгу макросов
- Использование встроенных текстовых формул
Надстройки для Excel
Самое простое это, конечно, установить надстройку для Excel, например ASAP Utilities. Здоровым плюсом является наличие бесплатной лицензии для установки дома.
Среди многих функций есть нужные нам для работы с текстом
Создание и установка макроса в личную книгу
На мой взгляд, оптимальным для работы является второй способ.
Для начала нужно открыть личную книгу макросов, так как по умолчанию ее нет. Для этого нужно нажать на запись макросов
После выбрать место сохранения нового макроса
Сразу можно выключить запись макроса, ведь все действие затевалось ради того, чтобы excel подгрузил файл PERSONAL.XLSB
После этого идем в редактор макросов (Alt+F11) (по умолчанию, можно воспользоваться панелью Разработчик, которое спрятано — чтобы открыть, надо зайти в Настройки — Основные — Показывать вкладку «Разработчик»)
и в Module1 нужно записать следующее
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Sub СделатьПрописными() For Each cel In Selection.Cells If cel.Text <> "" Then cel.Value = StrConv(cel.Text, vbUpperCase) Next End Sub Sub СделатьСтрочными() For Each cel In Selection.Cells If cel.Text <> "" Then cel.Value = StrConv(cel.Text, vbLowerCase) Next End Sub Sub СделатьПрописнойТолькоПервуюБукву() For Each cel In Selection.Cells If cel.Text <> "" Then cel.Value = StrConv(cel.Text, vbProperCase) Next End Sub |
Примерно должно получится следующее
После этого в меню макросов (Alt+F8) будет доступны нужные макросы
И как результат
Макросы в текстовых файлах для скачки
Использование встроенных формул
Использование встроенных формул больше подходит для показательного примера работы. И виной тому тот факт, что для встроенной формулы нужно обязательно создать новый столбец, это бывает неудобно. Хорошо бы, если Excel мог выполнять встроенные функции на ходу, только со столбцом-объектом.
Для преобразования в прописные нужно использовать функцию =ПРОПИСН(текст), для преобразования в строчные — функцию =СТРОЧН(текст)
Для того, чтобы сделать только первую букву заглавной, а все остальные строчными, нужно использовать более сложную формулу
1 | =ПРОПИСН(ПСТР(C1;1;1))&СТРОЧН(ПСТР(C1;2;ДЛСТР(C1)-1)) |
Всем удобной работы с текстом…
спасибо огромное очень помогло в работе
Спасибо большое автору, долго искал решение — сложная формула это самое то! Спасибо большое!!!
а как же всеми любимый танец с бубнами?)
Да, формула то, что надо
сложная формула для заглавных не нужна, есть функция ПРОПНАЧ
спасибо
всё работает
отдельно спасибо за файл-пример
он ускорил задачу