Hoppa till huvudinnehåll

Hur tvingar jag textsträngar till versaler / gemener / ordstäver i Excel?

När du skriver in några bokstäver eller ord i cellerna i Excel vill du tvinga textsträngarna till versaler även om du skrev in gemener eller versaler och vice versa. De flesta av oss kan överväga datavalideringsfunktionen i Excel, med den här funktionen får vi en varning när vi inte skriver rätt fall i texten. I den här artikeln kommer jag att presentera några intressanta sätt att tvinga texten till versaler, gemener eller versaler som du behöver.

Tvinga textsträngarna till stora / små bokstäver / skiftläge med datavalidering

Tvinga textsträngarna till versaler / små bokstäver / skiftläge med VBA-kod

Ändra text till UPPERCASE / gemener / korrekt fall med Kutools för Excel bra idé3


Datavalidering är ett kraftfullt verktyg i Excel, det kan hjälpa oss att utföra många operationer, med dess hjälp kan vi också tvinga stora och små bokstäver eller skiftläge i textsträngarna när du skriver, gör så här:

1. Gå till klicka Data > Datagransknings > Datagransknings, se skärmdump:

doc-force-versaler-1

2. I Datagransknings under dialogrutan Inställningar fliken, klicka på Tillåt rullgardinsmeny och välj Custom alternativ, sedan i Formel textruta, ange denna formel = EXAKT (ÖVRE (A1), A1), (A1 står för en kolumn att du kommer att använda den här funktionen, du kan ändra den efter ditt behov), se skärmdump:

doc-force-versaler-1

3. Sedan kan du skapa en varning efter behov, klicka Felavisering fliken och välj Sluta från Stil rullgardinsmenyn, till höger på Felmeddelande textruta, ange ditt eget varningsmeddelande, se skärmdump:

doc-force-versaler-1

4. Och klicka sedan på OK för att stänga dialogrutan, nu när du anger textsträngen som inte står i versaler i kolumn A, kommer en varningsruta att dyka upp för att påminna dig om att ange stora bokstäver.

doc-force-versaler-1

Notera:

Om du behöver tvinga textsträngarna till små eller små bokstäver, använd följande formler i Datagransknings i steg 2.

Tvinga till gemener: = EXAKT (LOWER (A1), A1);

Tvinga till rätt fall: = EXAKT (KORRIG (A1), A1)


Med följande VBA-kod kommer små bokstäver automatiskt att ändras till versaler när du anger små bokstäver i en cell.

1. Håll ner ALT + F11 knapparna och det öppnar Microsoft Visual Basic for Applications-fönstret.

2. Välj sedan ditt använda kalkylblad från vänster Project Explorerdubbelklicka på den för att öppna Modulerna, och kopiera och klistra sedan in följande VBA-kod i den tomma modulen:

VBA-kod: Tvinga textsträngen till versaler

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

doc-force-versaler-1

3. Spara och stäng sedan den här koden för att återgå till kalkylbladet. Nu när du anger textsträng när det är gemener eller versaler blir det versaler efter att du har tryckt på ange automatiskt.

Anmärkningar:

1. Den här koden tillämpas på hela kalkylbladet.

2. Om du inte hittar Project Explorer-rutan i fönstret kan du klicka utsikt > Project Explorer för att öppna den.

3. För att tvinga orden gemener eller skiftläge kan du använda följande VBA-kod: (Förfarandet är detsamma som ovan)

VBA-kod: Tvinga textsträng till gemener

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

VBA-kod: Tvinga textsträng till rätt fall

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

Om du bara vill ändra vissa specifika texter till UPPERCASE, gemener eller skiftläge, kan du använda Ändra ärende nytta av Kutools för Excel för att snabbt få det gjort.

Kutools för Excel, med mer än 300 praktiska funktioner, gör dina jobb enklare. 

Efter gratis installation Kutools för Excel, gör så här:

1. Markera texterna du vill ändra ärende och klicka på Kutools > text > Ändra ärende. Se skärmdump:
doc byta fall 6

2. I Ändra ärende i dialogrutan, kontrollera driftsalternativet efter behov och du kan förhandsgranska resultatet i Förhandsvisning ruta. Se skärmdump:
doc byta fall 2

3. klick Ok or Ansök och texterna har ändrats.

 Byt till UPPERCASE  Byt till korrekt fall  Ändra till Mening fall
 doc byta fall 3  doc byta fall 4 doc byta fall 5 

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
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