Przejdź do głównej zawartości

Jak wymusić na ciągach tekstowych wielkie / małe / prawidłowe litery w programie Excel?

W programie Excel, gdy wprowadzasz kilka liter lub słów do komórek, chcesz wymusić na ciągach tekstowych wielkie litery, nawet jeśli wprowadziłeś małe lub odpowiednie litery i odwrotnie. Większość z nas może rozważyć funkcję walidacji danych w programie Excel, dzięki tej funkcji otrzymamy ostrzeżenie, gdy nie wpiszemy poprawnej wielkości liter w tekście. W tym artykule przedstawię kilka interesujących sposobów, aby wymusić na tekście wielkie, małe lub właściwe litery, zgodnie z potrzebami.

Zmusza ciągi tekstowe do dużych / małych liter / odpowiednich wielkości liter za pomocą sprawdzania poprawności danych

Wymuś ciągi tekstowe na wielkie / małe litery / odpowiednie litery z kodem VBA

Zmień tekst na WIELKIE LITERY / małe litery / Właściwa wielkość liter za pomocą Kutools for Excel dobry pomysł 3


Walidacja danych to potężne narzędzie w Excelu, może nam pomóc w wykonywaniu wielu operacji, z jego pomocą możemy również wymusić wielkie, małe lub odpowiednie wielkości liter w ciągach tekstowych podczas pisania, wykonaj następujące czynności:

1. Przejdź do kliknięcia Dane > Walidacja danych > Walidacja danychzobacz zrzut ekranu:

doc-force-wielkie litery-1

2, w Walidacja danych okno dialogowe w obszarze Ustawienia Kliknij kartę Dopuszczać rozwijaną listę i wybierz Zamówienia Indywidualne opcja, a następnie w Formuła pole tekstowe wprowadź tę formułę = DOKŁADNE (GÓRNE (A1); A1)(A1 oznacza kolumnę, w której zastosujesz tę funkcję, możesz ją zmienić według swoich potrzeb), patrz zrzut ekranu:

doc-force-wielkie litery-1

3. Następnie możesz utworzyć alert według potrzeb, kliknij Alert o błędzie Zakładka i wybierz Stop z Styl rozwijana lista w prawym rogu pliku Komunikat o błędzie pole tekstowe, wprowadź własny komunikat ostrzegawczy, zobacz zrzut ekranu:

doc-force-wielkie litery-1

4. A następnie kliknij OK aby zamknąć okno dialogowe, teraz, gdy wprowadzisz ciąg tekstowy nie pisany wielkimi literami w kolumnie A, pojawi się okno ostrzegawcze przypominające o wpisaniu wielkich liter.

doc-force-wielkie litery-1

Uwaga:

Jeśli chcesz wymusić na ciągach tekstowych małe lub prawidłowe litery, zastosuj następujące formuły do Walidacja danych w kroku 2.

Wymuś małe litery: = DOKŁADNE (DOLNE (A1), A1);

Wymuś przypadek właściwy: = DOKŁADNE (WŁAŚCIWE (A1), A1)


W przypadku następującego kodu VBA po wprowadzeniu małych liter do komórki tekst z małych liter zostanie automatycznie zamieniony na wielkie litery.

1. Przytrzymaj ALT + F11 klucze i otwiera plik Okno Microsoft Visual Basic for Applications.

2. Następnie wybierz używany arkusz roboczy po lewej stronie Eksplorator projektówkliknij go dwukrotnie, aby otworzyć plik Moduł, a następnie skopiuj i wklej następujący kod VBA do pustego modułu:

Kod VBA: wymuś wprowadzenie wielkich liter w ciągu tekstowym

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

doc-force-wielkie litery-1

3. Następnie zapisz i zamknij ten kod, aby powrócić do arkusza roboczego, teraz, gdy wprowadzisz ciąg tekstowy, gdy będzie to małe lub właściwe litery, stanie się on wielką literą po dotknięciu Wchodzę klucz automatycznie.

Uwagi:

1. Ten kod jest stosowany do całego arkusza.

2. Jeśli nie możesz znaleźć pliku POkienko Eksploratora projektu w oknie możesz kliknąć Zobacz i wysłuchaj > Eksplorator projektów aby go otworzyć.

3. Aby wymusić stosowanie małych liter lub prawidłowych wielkości liter, możesz zastosować następujący kod VBA: (Procedura jest taka sama jak powyżej)

Kod VBA: Wymuś małe litery w ciągu tekstowym

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

Kod VBA: Wymuś ciąg tekstowy na odpowiednią wielkość liter

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

Jeśli chcesz po prostu zmienić niektóre określone teksty na WIELKIE, małe lub właściwe litery, możesz zastosować Zmień wielkość liter użyteczność Kutools dla programu Excel szybko to zrobić.

Kutools dla programu Excel, ponad 300 przydatne funkcje, ułatwiają pracę. 

Po bezpłatna instalacja Kutools dla programu Excel, wykonaj poniższe czynności:

1. Wybierz teksty, dla których chcesz zmienić wielkość liter i kliknij Kutools > Tekst > Zmień wielkość liter. Zobacz zrzut ekranu:
Przypadek zmiany dokumentu 6

2. w Zmień wielkość liter W oknie dialogowym zaznacz odpowiednią opcję operacji i możesz wyświetlić podgląd wyniku w pliku Podgląd szkło. Zobacz zrzut ekranu:
Przypadek zmiany dokumentu 2

3. kliknij Ok or Aplikuj a teksty zostały zmienione.

 Zmień na WIELKIE LITERY  Zmień na właściwy przypadek  Zmień na sprawę zdania
 Przypadek zmiany dokumentu 3  Przypadek zmiany dokumentu 4 Przypadek zmiany dokumentu 5 

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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