Note: The other languages of the website are Google-translated. Back to English

 Hogyan lehet konvertálni a szöveges karakterláncot nagybetűvé kivételekkel az Excelben?

Az Excelben a Proper függvényt alkalmazhatja a szöveges karakterláncok egyszerű nagybetűvé konvertálásához, de néha ki kell zárnia néhány konkrét szót, amikor a szöveges karakterláncokat a nagybetűvé konvertálja, ahogy az alábbi képen látható. Ebben a cikkben néhány gyors trükkről fogok beszélni, amely megoldja ezt a feladatot az Excel programban.

A képlet segítségével konvertálja a szöveges karakterláncokat kis- és nagybetűkre, kivételekkel

Konvertálja a szöveges karakterláncokat kis- és nagybetűkké, kivételekkel a VBA kód használatával


A képlet segítségével konvertálja a szöveges karakterláncokat kis- és nagybetűkre, kivételekkel

A következő képlet segíthet a feladat gyors kezelésében, kérjük, tegye a következőket:

Írja be ezt a képletet:

= FELSŐ (BAL (A2)) ÉS KÖZÉP "," is ")," USA "," USA ")), 2, LEN (A2)) egy cellába, ahol meg akarja szerezni az eredményt, majd húzza a kitöltő fogantyút a képlet kitöltéséhez, és a szöveges karakterláncokat megfelelő esetben alakították át, de konkrét kivételeket, lásd a képernyőképet:

Megjegyzések: A fenti képletben A2 a konvertálni kívánt cella, „Of”, „A”, „Is”, „USA” a konvertálás utáni szokásos helyes szavak, „Of”, „a”, „is”, „USA” azok a szavak, amelyeket ki akar zárni a megfelelő esetből. Megváltoztathatja őket igénye szerint, vagy más szavakat is felvehet a SUBSTITUTE funkcióval.


Konvertálja a szöveges karakterláncokat kis- és nagybetűkké, kivételekkel a VBA kód használatával

Ha a fenti képletet kissé nehéz megérteni és az igényeinek megfelelően módosítani, itt VBA kódot is alkalmazhat a feladat befejezéséhez. Kérjük, kövesse az alábbi lépéseket egyenként.

1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablak.

VBA-kód: konvertálja a szöveges karakterláncokat a kis- és nagybetűkre, kivéve:

Sub CellsValueChange()
'Updateby Extendoffice
    Dim xSRg As Range
    Dim xDRg As Range
    Dim xPRg As Range
    Dim xSRgArea As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim I As Long
    Dim K As Long
    Dim KK As Long
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xSRg = Application.InputBox("Original cells:", "KuTools For Excel", xAddress, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    Set xDRg = Application.InputBox("Output cells:", "KuTools For Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    Set xPRg = Application.InputBox("Cells to exclude:", "KuTools For Excel", , , , , , 8)
    If xPRg Is Nothing Then Exit Sub
    Set xDRg = xDRg(1)
    For I = 1 To xSRg.Areas.Count
        Set xSRgArea = xSRg.Areas.Item(I)
        For K = 1 To xSRgArea.Count
            xRgVal = xSRgArea(K).Value
            If Not IsNumeric(xRgVal) Then
                xRgVal = CorrectCase(xRgVal, xPRg)
                xDRg.Offset(KK).Value = xRgVal
            End If
            KK = KK + 1
        Next
    Next
End Sub
Function CorrectCase(ByVal xRgVal As String, ByVal xPRg As Range) As String
    Dim xArrWords As Variant
    Dim I As Integer
    Dim xPointer As Integer
    Dim xVal As String
    xPointer = 1
    xVal = xRgVal
    xArrWords = WordsOf(xRgVal)
    For I = 0 To UBound(xArrWords)
        xPointer = InStr(xPointer, " " & xVal, " " & xArrWords(I))
        Debug.Print xPointer
        Mid(xVal, xPointer) = CorrectCaseOneWord(CStr(xArrWords(I)), xPRg)
    Next I
    CorrectCase = xVal
End Function
Function WordsOf(xRgVal As String) As Variant
    Dim xDelimiters As Variant
    Dim xArrRtn As Variant
    xDelimiters = Array(",", ".", ";", ":", Chr(34), vbCr, vbLf)
    For Each xEachDelimiter In xDelimiters
        xRgVal = Application.WorksheetFunction.Substitute(xRgVal, xEachDelimiter, " ")
    Next xEachDelimiter
    xArrRtn = Split(Trim(xRgVal), " ")
    WordsOf = xArrRtn
End Function
Function CorrectCaseOneWord(xArrWord As String, xERg As Range) As String
    With xERg
        If IsError(Application.Match(xArrWord, .Cells, 0)) Then
            CorrectCaseOneWord = Application.Proper(xArrWord)
        Else
            CorrectCaseOneWord = Application.VLookup(xArrWord, .Cells, 1, 0)
        End If
    End With
End Function

3. Ezután nyomja meg a gombot F5 kulcs a kód futtatásához, és megjelenik egy felszólító mező, amely emlékezteti Önt az átalakítandó eredeti cellák kiválasztására, lásd a képernyőképet:

4. Kattintson a gombra OK, jelölje ki azokat a cellákat, ahol az eredményeket ki szeretné adni az előugró mezőben, lásd a képernyőképet:

5. Kattintson a gombra OK, és a felugró párbeszédpanelen válassza ki a kizárni kívánt szövegeket, lásd a képernyőképet:

6. Kattintson a gombra OK a párbeszédablakokból való kilépéshez, és az összes szöveges karakterlánc át lett alakítva a megfelelő nagybetűvé, de kizárta a megadott szavakat, lásd a képernyőképet:


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
officetab alja
A megjegyzések rendezése szerint
Hozzászólások (1)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
Ez elképesztő lenne, ha a makró csak a csípés részét zárná ki a CAPS-ben, nem pedig a teljes cellát a kivételek listájából.
Még senki sem írt megjegyzést

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi