Перейти до основного матеріалу

Як примусити текстовий рядок до великого / малого / належного регістру в Excel?

У програмі Excel, коли ви вводите деякі букви або слова в клітинки, ви хочете, щоб текстові рядки були примусовими до верхнього регістру, навіть якщо ви ввели малі або належні регістри, і навпаки. Більшість з нас можуть розглянути функцію перевірки даних у Excel, завдяки якій ми отримаємо попередження, якщо не введемо правильний регістр тексту. У цій статті я представив декілька цікавих способів примусити текст до великих, малих чи правильних регістрів, як вам потрібно.

Примусово застосовуйте текстові рядки до великих / малих / належних регістрів за допомогою перевірки даних

Примусуйте текстові рядки до великих / малих / належних регістрів за допомогою коду VBA

Змініть текст на ВЕРХНІ/нижні регістри/правильний регістр за допомогою Kutools для Excel гарна ідея3


Перевірка даних - це потужний інструмент у програмі Excel, він може допомогти нам зробити багато операцій, за його допомогою ми також можемо примусово застосовувати великі, малі або належні регістри текстових рядків під час набору тексту, будь-ласка, виконайте такі дії:

1. Перейдіть до клацання дані > Перевірка достовірності даних > Перевірка достовірності даних, див. скріншот:

doc-force-верхній регістр-1

2, в Перевірка достовірності даних в діалоговому вікні Налаштування вкладку, натисніть кнопку дозволяти випадаючий список і виберіть виготовлений на замовлення , потім у Formula текстове поле, введіть цю формулу = ТОЧНО (ВЕРХНІЙ (A1), A1), (A1 означає стовпець, до якого ви застосуєте цю функцію, ви можете змінити її відповідно до своїх потреб), див. знімок екрана:

doc-force-верхній регістр-1

3. Тоді ви можете створити попередження, як вам потрібно, клацніть Повідомлення про помилку Вкладка і виберіть Стоп від стиль випадаючий список у правому куті Повідомлення про помилку текстове поле, введіть власне попереджувальне повідомлення, див. знімок екрана:

doc-force-верхній регістр-1

4. А потім клацніть OK щоб закрити діалогове вікно, тепер, коли ви вводите текстовий рядок не у верхньому регістрі у стовпці А, з’явиться вікно попередження, яке нагадуватиме вам про введення великих літер.

doc-force-верхній регістр-1

Примітка:

Якщо вам потрібно змусити текстові рядки писати з малого або нижчого регістру, застосуйте наступні формули до Перевірка достовірності даних на кроці 2.

Сила в нижній регістр: = ТОЧНО (НИЗЬКА (A1), A1);

Примус до правильного регістру: = ТОЧНО (ПРАВИЛЬНО (A1), A1)


За допомогою наступного коду VBA при введенні малих слів у клітинку, нижній регістр тексту буде автоматично змінено на великі літери.

1. Утримуйте клавішу ALT + F11 і відкриває Вікно Microsoft Visual Basic для програм.

2. Потім виберіть свій використаний аркуш зліва Провідник проектів, двічі клацніть на ньому, щоб відкрити Модулі, а потім скопіюйте та вставте наступний код VBA у порожній модуль:

Код VBA: Примусовий текстовий рядок до верхнього регістру

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = VBA.UCase(Target.Value)
End Sub

doc-force-верхній регістр-1

3. Потім збережіть і закрийте цей код, щоб повернутися до робочого аркуша. Тепер, коли ви вводите текстовий рядок, коли він буде нижчим або правильним, він стане великим після натискання на Що натомість? Створіть віртуальну версію себе у клавішу автоматично.

Примітки:

1. Цей код застосовується до цілого аркуша.

2. Якщо ви не можете знайти Pпанель Провідника Проекту у вікні ви можете клацнути вид > Провідник проектів щоб його відкрити.

3. Щоб наголосити слова з малої чи великої літери, можна застосувати такий код VBA: (Процедура така ж, як і вище)

Код VBA: Примусовий текстовий рядок до нижнього регістру

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = VBA.LCase(Target.Value)
End Sub

Код VBA: Примусовий текстовий рядок до належного регістру

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = Application.WorksheetFunction.Proper(Target.Value)
End Sub

Якщо ви просто хочете змінити деякі конкретні тексти на ЗАГЛАВНІ, малі чи належні регістри, ви можете застосувати Змінити регістр корисність Kutools для Excel швидко зробити це.

Kutools для Excel, з більш ніж 300 зручні функції, полегшує вам роботу. 

після безкоштовна установка Kutools для Excel, виконайте наведені нижче дії.

1. Виберіть тексти, для яких потрібно змінити регістр, і клацніть Кутулс > текст > Змінити регістр. Дивіться знімок екрана:
зразок зміни документа 6

2 В Змінити регістр діалоговому вікні, перевірте параметр операції, як вам потрібно, і ви можете переглянути результат у попередній перегляд панелі. Дивіться знімок екрана:
зразок зміни документа 2

3. клацання Ok or Застосовувати а тексти були замінені на регістр.

 Перейдіть на ВЕРХНЮ  Змінити на правильний регістр  Змінити на вирок
 зразок зміни документа 3  зразок зміни документа 4 зразок зміни документа 5 

Найкращі інструменти продуктивності офісу

🤖 Kutools AI Aide: Революціонізуйте аналіз даних на основі: Інтелектуальне виконання   |  Згенерувати код  |  Створення спеціальних формул  |  Аналізуйте дані та створюйте діаграми  |  Викликати функції Kutools...
Популярні функції: Знайдіть, виділіть або визначте дублікати   |  Видалити порожні рядки   |  Об’єднайте стовпці або клітинки без втрати даних   |   Раунд без Формули ...
Супер пошук: VLookup за кількома критеріями    Багатозначний VLookup  |   VLookup на кількох аркушах   |   Нечіткий пошук ....
Розширений розкривний список: Швидке створення випадаючого списку   |  Залежний спадний список   |  Виберіть розкривний список, що вибирається ....
Менеджер колонок: Додайте конкретну кількість стовпців  |  Перемістити стовпці  |  Перемкнути статус видимості прихованих стовпців  |  Порівняйте діапазони та стовпці ...
Особливості: Фокус сітки   |  Перегляд дизайну   |   Велика панель формул    Диспетчер робочих книг і аркушів   |  Бібліотека ресурсів (автотекст)   |  Вибір дати   |  Об’єднайте робочі аркуші   |  Шифрування/розшифрування клітинок    Надсилайте листи за списком   |  Супер фільтр   |   Спеціальний фільтр (фільтр жирний/курсив/закреслений...) ...
Топ-15 наборів інструментів12 текст Tools (додати текст, Видалити символи, ...)   |   50 + Графік типи (діаграма Ганта, ...)   |   40+ Практичний Формули (Розрахуйте вік на основі дня народження, ...)   |   19 вставка Tools (Вставте QR-код, Вставити зображення зі шляху, ...)   |   12 Перетворення Tools (Числа до слів, Валютна конверсія, ...)   |   7 Злиття та розділення Tools (Розширені комбіновані ряди, Розділені клітини, ...)   |   ... і більше

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
Comments (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Please suggest modifications in the VBA code to force the text strings to change to the desired format (Upper/Lower/Proper case) in selected/specified cells only rather than changing the Case of the text strings in the entire worksheet.
This comment was minimized by the moderator on the site
Hello, DS,
To apply the code to a specified range instead of entire worksheet, please apply the following code:
VBA code: Force text string to uppercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = VBA.UCase(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


VBA code: Force text string to lowercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = VBA.LCase(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


VBA code: Force text string to propercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = Application.Proper(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


Please have a try, thank you!
This comment was minimized by the moderator on the site
Use: On Error Resume Next

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
On Error Resume Next
Target.Value = Application.WorksheetFunction.Proper(Target.Value)
End Sub
This comment was minimized by the moderator on the site
muchas gracias, sirvio enormemente estos codigos
This comment was minimized by the moderator on the site
This worked for me, however if you went to delete the contents of the cell then a "runtime error '13': type mismatch" came up

Any ideas?
This comment was minimized by the moderator on the site
i have the same problem. if you know how to deal with it please tell me!
This comment was minimized by the moderator on the site
Hello, which method you use will come up the errors?
This comment was minimized by the moderator on the site
Like your VBA solution, but how could I limit it to a single column and format other columns differently, e.g., columns A and C force uppercase, column B force proper case?
This comment was minimized by the moderator on the site
I do not know which VBA can handle your job (some columns in uppercase, some in proper case), but the data validation can solve it, why do not use it?
This comment was minimized by the moderator on the site
thanks for the macro to convert all entries to capital letters, but is there something i need to do to stop the macro from crashing excel every fe minutes? Appreciate the help!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations