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

Jak vybarvit nebo zvýraznit určité slovo v buňkách v aplikaci Excel?

Pokud buňka obsahuje více slov, jak můžete zvýraznit určité slovo pouze v této buňce? A co takhle zvýraznit toto slovo ve více buňkách? Tento článek poskytne způsob, jak toho dosáhnout.

Vybarvěte určité slovo v jedné buňce / více buňkách pomocí kódu VBA


Vybarvěte určité slovo v jedné buňce / více buňkách pomocí kódu VBA

Následující kód VBA vám pomůže zvýraznit určité slovo ve výběru. Postupujte prosím následovně.

1. Vyberte rozsah obsahující buňky, ve kterých chcete zvýraznit určité slovo. Poté stiskněte Další + F11 současně otevřete Microsoft Visual Basic pro aplikace okno.

2. V otvoru Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Vložit > Modul. Poté zkopírujte a vložte kód VBA do okna Kód.

Kód VBA: Vybarvení určitého slova v buňkách v aplikaci Excel

Sub HighlightStrings()
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Application.ScreenUpdating = True
End Sub

3. zmáčkni F5 klíč ke spuštění kódu. A v Kutools pro Excel V dialogovém okně zadejte určité slovo, které v buňkách zvýrazníte, a poté klikněte na ikonu OK knoflík. Viz screenshot:

Poté můžete vidět, že všechna zadaná slova jsou ve vybraných buňkách červeně zabarvena, jak je znázorněno níže.


Související články:


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 (23)
Hodnocení 5 z 5 · 1 hodnocení:
Tento komentář byl moderátorem webu minimalizován
Nevysvětlujete, jak otevřít "dialogové okno Kutools pro Excel" uvedené v posledním kroku.
Tento komentář byl moderátorem webu minimalizován
Milý Justine,
Omlouvám se za to. Po vložení kódu VBA do okna Kód stiskněte klávesu F5 pro spuštění kódu a poté se otevře dialogové okno "Kutools for Excel". Děkuji.
Tento komentář byl moderátorem webu minimalizován
Existuje nějaký způsob, jak zajistit, aby kód automaticky zvýraznil slova, když upravuji karty?
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
Promiň, s tím ti nepomůžu. Děkuji za Váš komentář.
Tento komentář byl moderátorem webu minimalizován
DÍKY, DÍKY, DÍKY
Tento komentář byl moderátorem webu minimalizován
Quisisera resaltar varias palabras al tiempo, coo lo puedo hacer?
Tento komentář byl moderátorem webu minimalizován
Eso es lo que estoy tratando de hacer tamiben (o to se také snažím)
Tento komentář byl moderátorem webu minimalizován
V případě, že dáváte přednost hledání/zvýraznění bez rozlišení velkých a malých písmen, změňte řádek 'xArr = Split(xCell.Value, xHStr)' na 'xArr = Split(LCase(xCell.Value), LCase(xHStr))'. Také jsem si všiml, že stisknutím F5 se skript nespustí (ale místo toho zobrazí další modální okno). Přistoupil jsem k tomu tak, že jsem povolil kartu Vývojář pomocí možností aplikace Excel (Přizpůsobit pás karet) a následně kliknul na Makra.
Tento komentář byl moderátorem webu minimalizován
Díky... to bylo velmi užitečné! Existuje způsob, jak upravit makro tak, aby zvýrazňovalo pouze celá slova namísto částí. Například se snažím zvýraznit slovo „design“, ale to zdůrazňuje „design“ ve slově „určit“. Chci, aby to slovo přeskočilo, pokud to není celé slovo. Dík!
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
Je možné, aby supprimer la boite de dialog a mettre par défaut "jablko" comme mot recherché?
děkuji
Tento komentář byl moderátorem webu minimalizován
Dobrý den PAUC,
Následující kód vám může pomoci. Zkuste to prosím.
Sub HighlightStrings()
'Updated by Extendoffice 20220721
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = "apple"
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Application.ScreenUpdating = True
End Sub
Tento komentář byl moderátorem webu minimalizován
dobrý

Coloreaza cuvantul doar daca e la inceput. Daca e la mijloc in aceeasi casuta de excel sau la sfarsit nu-l coloreaza.
Ce anume as putea schimba in cod pentru al colora indiferent unde se afla in casuta excel?

Díky!
Tento komentář byl moderátorem webu minimalizován
Ahoj Andree,
Pokud chcete slovo zvýraznit pouze v případě, že je na začátku vybraných buněk. Následující kód VBA vám může pomoci. Zkuste to prosím.
Sub HighlightStrings()
'Updated by Extendoffice 20220805
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            If xHStrLen <= Len(xCell.Value) Then
                If xHStr = Left(xCell.Value, xHStrLen) Then
                    xCell.Characters(1, xHStrLen).Font.ColorIndex = 3
                End If
            End If
        Next
    Application.ScreenUpdating = True
End Sub
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
a me servirebbe evidenziare tutti i numeri (comprensivi di due decimali) da -10,00 a 0 in rosso e da 0 a +10,00 in verde. přijďte posso fare per non aggiungere singolarmente ogni dato senza aggiungerli tutti manualmente?

Grazie mille
Tento komentář byl moderátorem webu minimalizován
Ahoj Ciao,
Jsou vaše čísla umístěna v různých buňkách v rozsahu? Pokud ano, můžete vytvořit dvě pravidla podmíněného formátování (mezi -10 a 0, mezi 0 a 10) pro zvýraznění těchto čísel. Pokud ne, můžete nahrát snímek obrazovky vašich dat?
Tento komentář byl moderátorem webu minimalizován
To je moc pěkné, thx! Zajímalo by mě, jestli někdo neví, jak to udělat, aby to fungovalo na Macu? Mnohokrát děkuji
Hodnocení 5 z 5
Tento komentář byl moderátorem webu minimalizován
jak by mohl být skript změněn, aby dělal následující?

zvětšit písmo o 1 velikost a
zvýraznit více slov jedním spuštěním skriptu?

Thx!
Tento komentář byl moderátorem webu minimalizován
Ahoj t.taln,

Pokud chcete zvětšit velikost písma o 1 a zvýraznit více slov současně, přidejte za řádek následující řádek "xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3“ v kódu VBA.
Poznámka: Nejprve musíte znát aktuální velikost písma vybrané buňky a poté zadat číslo o jednu velikost větší než původní slovo. Číslo 12 na řádku níže je velikost písma, kterou přiřadím odpovídajícím slovům. A původní velikost písma slova je 11.
xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.Size = 12
Tento komentář byl moderátorem webu minimalizován
Děkuji, je to velmi užitečné. Jak mohu zvýraznit slovo místo barvy písma?

Pozdravy.
Tento komentář byl moderátorem webu minimalizován
Děkuju. to bylo opravdu užitečné. Může mi prosím někdo poradit, jak vybarvit text místo zvýraznění?

Pozdravy
Tento komentář byl moderátorem webu minimalizován
Ahoj Shaik Faiaz hamad,

Excel neumožňuje obarvit část buňky. Je mi líto, že vám s tímto problémem nemohu pomoci.
Tento komentář byl moderátorem webu minimalizován
Bonjour Cristal,
Merci pour ce kód. Je možné použít adaptér pro mettre a důkazy plusieurs "Apple,Rose,Vert,Merci"
děkuji
Tento komentář byl moderátorem webu minimalizován
Ahoj Cous,

Pomoci může následující kód VBA. Po spuštění kódu se zobrazí dialogové okno. Zadejte prosím slova, která chcete zvýraznit, a oddělte je čárkou.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/highlight.png
Sub HighlightStrings()
'Updated by Extendoffice 20230130
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    Dim xArr2
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
    
    xArr2 = Split(xHStr, ",")
    For j = 0 To UBound(xArr2)
        xHStr = xArr2(j)
    
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Next
    
    Application.ScreenUpdating = True
End Sub
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