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

Jak vložit mezery před velkými písmeny v aplikaci Excel?

Předpokládejme, že máte seznam textových řetězců, které náhodně odstraní všechny mezery mezi slovy, například takto: InsertBlankRowsB BetweenData, a nyní chcete přidat mezery před každé písmeno velkými písmeny, abyste oddělili slova jako Vložte prázdné řádky mezi data. Jak byste mohli rychle přidávat mezery před velkými písmeny namísto psaní mezer po jednom v aplikaci Excel?


Pomocí funkce definované uživatelem vkládejte mezery před velká písmena

Bohužel neexistuje žádný přímý způsob, jak přidat mezery před velkými písmeny v aplikaci Excel, ale k vyřešení tohoto úkolu můžete vytvořit funkci definovanou uživatelem.

1. Aktivujte list, který obsahuje textové řetězce, do kterých chcete přidat mezery.

2. Podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.

3, klikněte Vložit > Modula vložte následující kód do Okno modulu.

Kód VBA: Vložte mezery před velká písmena

Function AddSpaces(pValue As String) As String
'Update 20140723
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
   xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
   If xAsc >= 65 And xAsc <= 90 Then
      xOut = xOut & " " & VBA.Mid(pValue, i, 1)
   Else
      xOut = xOut & VBA.Mid(pValue, i, 1)
   End If
Next
AddSpaces = xOut
End Function

4. Poté tento kód uložte a zavřete, vraťte se do listu a zadejte tento vzorec = přídavné prostory (A1) do prázdné buňky kromě vašich dat, viz screenshot:
doc-add-mezery-před-velká-1

5. A poté přetáhněte úchyt výplně přes rozsah, který chcete tento vzorec obsahovat, dostanete mezery před každé vaše velké písmeno.
doc-add-mezery-před-velká-1

Snadno odstraňte úvodní / koncové / extra mezery v buňkách

Kutools pro Excel Odebrat mezery obslužný program umožňuje uživatelům aplikace Excel snadno z vybraných buněk rychle odstranit veškerý úvodní prostor, koncový prostor, mezery navíc nebo všechny mezery.


reklama odstranit mezeru 1

Vložte mezery před velká písmena pomocí kódu VBA

Zde je další kód VBA, který vám může udělat laskavost, postupujte takto:

1. Podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.

2, klikněte Vložit > Modula vložte následující kód do Okno modulu.

Kód VBA: Vložte mezery před velká písmena

Sub AddSpacesRange()
'Update 20140723
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
    xValue = Rng.Value
    xOut = VBA.Left(xValue, 1)
    For i = 2 To VBA.Len(xValue)
       xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
       If xAsc >= 65 And xAsc <= 90 Then
          xOut = xOut & " " & VBA.Mid(xValue, i, 1)
       Else
          xOut = xOut & VBA.Mid(xValue, i, 1)
       End If
    Next
    Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub

3. Pak stiskněte tlačítko F5 klíč k provedení tohoto kódu, vyskočí okno s výzvou k výběru rozsahu dat, který chcete použít.
doc-add-mezery-před-velká-1

4. A pak klikněte na tlačítko OK zavřete toto pole s výzvou, mezery byly vloženy před velká písmena najednou, viz screenshot:
doc-add-mezery-před-velká-1


Vložte mezeru před všechna velká písmena pomocí Kutools pro Excel

Kutools pro Excel doplnit text nástroj vám pomůže snadno obejít makra VBA a snadno vložit prostor před všechna velká písmena v aplikaci Excel.

Kutools pro Excel - Obsahuje více než 300 užitečných nástrojů pro Excel. Plná zkušební verze zdarma 30-den, není potřeba kreditní karta! Zkušební verze zdarma hned teď!

1. Vyberte rozsah, do kterého vložíte mezeru před velkými písmeny, a klikněte na Kutools > text > doplnit text. Viz snímek obrazovky:

2. V úvodním dialogovém okně Přidat text zadejte mezeru do text zaškrtněte políčko Pouze přidat do možnosti a zvolte 1. písmeno je velké z Pouze přidat do rozbalovací seznam.

3, Klepněte na tlačítko Ok tlačítko pro vložení mezery před všechna velká písmena, jak ukazuje následující snímek obrazovky:
doc přidejte mezery před velká písmena 7

Kutools pro Excel - Obsahuje více než 300 užitečných nástrojů pro Excel. Plná zkušební verze zdarma 30-den, není potřeba kreditní karta! Get It Now

Poznámky: Tato metoda také přidá mezeru na začátek buněk, pokud je první písmeno velké. Můžete se přihlásit Kutools > text > Odebrat mezery odebrat všechny úvodní mezery z vybraných buněk.


Související článek:


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel řeší většinu vašich problémů a zvyšuje vaši produktivitu o 80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než 300 výkonných funkcí. Podporuje Office / Excel 2007-2021 a 365. Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Plné funkce 30denní bezplatná zkušební verze. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
officetab dno
Komentáře (9)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Potřebuji pomoc v Excelu Chci najít Velká písmena v buňce. například: Sagar Paul MBA 16:04 Chci, aby byl MBA zvýrazněn
Tento komentář byl moderátorem webu minimalizován
Doufám, že to uvidíte a vyzkoušíte. Sub Test() Dim Rg As Range, xCell As Range Dim i As Long Dim xChar As String Set Rg = Application.Selection For Every xCell In Rg For i = 1 To xCell.Characters.Count xChar = xCell.Characters(i, 1) .Text If Asc(xChar) > 64 And Asc(xChar) < 91 Then xCell.Characters(i, 1).Font.Color = vbRed End If Next Next End Sub
Tento komentář byl moderátorem webu minimalizován
Dobrý den, váš kód funguje skvěle. Víte, jak přizpůsobit kód 20140723, aby fungoval na více listech? Chtěl bych v celém sešitu přidat mezery mezi velká písmena. Dík!
Tento komentář byl moderátorem webu minimalizován
Ahoj

Nejprve mnohokrát děkuji za váš příklad kódu a vysvětlení. V mém případě to funguje velmi dobře.

Mám jen 1 problém, některé řetězce obsahují slova jako URL, která by neměla být oddělena.
Vidíte způsob, jak vyjmout například „URL“ z přidávání mezer?

Bylo by velmi hezké, kdybyste mohli pomoci. Už jsem to chvíli zkoušel, ale nevím jak to vyřešit..


S pozdravem
Luca
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
Děkuji za váš komentář a radu. Poslal jsem váš návrh projektovému týmu Kutools, jsem si jistý, že jej brzy vylepší.
Tento komentář byl moderátorem webu minimalizován
Bylo nalezeno řešení?
Tento komentář byl moderátorem webu minimalizován
ahoj, chci se vás zeptat, jestli jste našli řešení pro váš případ, pokud jste našli řešení, poskytněte mi to
Tento komentář byl moderátorem webu minimalizován
Tato funkce řeší dva problémy, které dané řešení nepokrývá:
1. neanglický text (s diakritickými znaménky)
2. po sobě jdoucí velká písmena, která by za sebou neměla mít mezery

` Soukromá funkce AddSpaces(sText As String) As String
' Vloží mezeru bezprostředně před velké písmeno, kromě případů, kdy jsou po sobě následující znaky velké.
' Poslední aktualizace: 2022-07-04
'
Dim sRet As String, i As Integer, sChar As String, bPrevWasUCase As Boolean

sRet = Left(sText, 1)
Pro i = 2 To Len(sText)
sChar = Mid(sText, i, 1)
If sChar = UCase(sChar) And Not bPrevWasUCase Then
sRet = sRet & " " & sChar
bPrevWasUCase = Pravda
Jiný
sRet = sRet & sChar
bPrevWasUCase = False
End If
Příště já

AddSpaces= sRet
Koncová funkce`
Tento komentář byl moderátorem webu minimalizován
Hello friend,

Děkujeme za vaše sdílení. Zkoušel jsem váš kód VBA, ale nefunguje. Náš kód VBA zvládne neanglický text. Otestoval jsem francouzský text a mezery jsou úspěšně vloženy před velká písmena.

S pozdravem,
Mandy
Zatím zde nejsou žádné komentáře
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL