Hoppa till huvudinnehåll

Hur hittar jag positionen för första versaler i Excel-textsträng?

Antag att det finns en lista med textsträngar blandat med siffror, versaler och små bokstäver. Hur kan du snabbt hitta positionen för första versaler från strängarna? I den här artikeln introducerar jag trick som snabbt kan ange positionen för första versaler utan att räkna dem en efter en manuellt i Excel.

Hitta position för första versaler i sträng med formel

Hitta position för första versaler i sträng med definierad funktion

Ändra alla bokstäver till UPPERCASE eller korrekt fall med Kutools för Excel bra idé3


pil blå höger bubbla Hitta position för första versaler i sträng med formel

Här är en formel som kan hjälpa dig att snabbt hitta positionen för första versaler från sträng, gör så här:

Välj en tom cell bredvid strängen du vill hitta den första stora bokstaven, till exempel B1, ange denna formel =MIN(IF(ISERROR(FIND(CHAR(ROW(INDIRECT("65:90"))),A1)),"",FIND(CHAR(ROW(INDIRECT("65:90"))),A1)))

Presse Skift + Ctrl + Enter för att få rätt resultat och dra sedan handtaget för automatisk fyllning över cellerna som behövs för att tillämpa denna formel. Se skärmdump:
doc hitta position för första versal 1


pil blå höger bubbla Hitta position för första versaler i sträng med definierad funktion

Förutom formel kan du också använda definierad funktion för att ta reda på positionen för första versaler i strängen.

1. Aktivera arket som innehåller strängen du vill hitta versaler och tryck på Alt + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. högerklicka på arket du vill använda koden i Projektutforska och klicka Insert > Modulernaoch klistra in under koden i det tomma modulskriptet. Se skärmdump:

Kod: Hitta position för första versaler från sträng.

Function GetFirstUpper(Rg As Range) As Integer
'UpdatebyExtendoffice20160726
    Dim xStr As String
    Dim I As Integer
    Application.Volatile
    GetFirstUpper = -1
    On Error Resume Next
    xStr = Trim(Rg.Value)
    For I = 1 To Len(xStr)
        If (Asc(Mid(xStr, I, 1)) < 91) And (Asc(Mid(xStr, I, 1)) > 64) Then
            GetFirstUpper = I
            Exit Function
        End If
    Next
End Function

doc hitta position för första versal 5

3. Spara koden och gå tillbaka till arket du använder och välj en tom cell bredvid strängen du vill hitta versaler, ange den här formeln = GetFirstUpper (F1), Tryck ange och dra sedan autofyllhandtaget över celler som behövs för denna formel. Se skärmdump:
doc hitta position för första versal 6

Tips: Om det inte finns någon stor bokstav i strängen visas resultatet som -1.


pil blå höger bubbla Ändra alla bokstäver till UPPERCASE eller korrekt fall med Kutools för Excel

I allmänhet i Excel-arbete kan du vanligtvis behöva byta bokstavssträngar till UPPERCAEs, Proper Case, gemener, Sentence case eller ToGgLe CaSe enligt nedanstående skärmdump.
doc hitta position för första versal 2

Med Kutools för exceJag kan använda den Ändra ärende verktyg för att snabbt ändra brevlådan efter behov.

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. Välj de strängar du vill ändra deras fall och klicka på Kutools > text > Ändra ärende. Se skärmdump:
doc hitta position för första versal 3

2. Sedan i popping Ändra ärende dialogrutan, markera det alternativ du vill ha i Ändra typ och du kan förhandsgranska det ändrade resultatet i förhandsgranskningsfönstret. Se skärmdump:
doc hitta position för första versal 4

3. Klicka sedan Ok or Ansök för att ändra ärende.

doc nedladdning 1

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 (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I would suggest use the new CHAR(SEQUENCE(26, 1, 65)) instead CHAR(ROW(INDIRECT("65:90"))) if you can, the new code is simpler to understand and gives me less problems with automatic tables
This comment was minimized by the moderator on the site
Hi,
Can you please help me to understand why you used INDIRECT("65:90").? What is the meaning of "65:90"?
This comment was minimized by the moderator on the site
65 to 90 is the code for uppercase characters, so this code checks what the position of the character code is within that range
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations