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

Hur färgar eller markerar jag vissa ord i celler i Excel?

Om en cell innehåller flera ord, hur kan du bara markera ett visst ord i den här cellen? Och vad sägs om att markera detta ord i flera celler? Denna artikel ger en metod för att uppnå det.

Färga ett visst ord i en enda cell / flera celler med VBA-kod


Färga ett visst ord i en enda cell / flera celler med VBA-kod

Följande VBA-kod kan hjälpa dig att markera det specifika ordet i ett val. Gör så här.

1. Välj intervallet innehåller de celler som du vill markera ett visst ord inuti. Tryck sedan på andra + F11 samtidigt för att öppna Microsoft Visual Basic för applikationer fönster.

2. I öppningen Microsoft Visual Basic för applikationer fönstret klickar Insert > Modulerna. Kopiera och klistra sedan in VBA-kod i kodfönstret.

VBA-kod: Färga vissa ord i celler i 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. tryck på F5 för att köra koden. Och i Kutools för Excel dialogrutan, ange det ord som du kommer att markera i celler och klicka sedan på OK knapp. Se skärmdump:

Då kan du se alla orden du har angett är färgade i rött i valda celler omedelbart som nedan skärmdump visas.


Relaterade artiklar:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

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!
officetab botten
Sortera kommentarer efter
Kommentarer (21)
Klassad 5 av 5 · 1 betyg
Denna kommentar minimerades av moderatoren på webbplatsen
Du förklarar inte hur man öppnar "Kutools för Excel-dialogrutan" som hänvisas till i det sista steget.
Denna kommentar minimerades av moderatoren på webbplatsen
Kära Justin,
Förlåt för det. Efter att ha klistrat in VBA-koden i kodfönstret, tryck på F5-tangenten för att köra koden, och sedan öppnas dialogrutan "Kutools for Excel". Tack.
Denna kommentar minimerades av moderatoren på webbplatsen
Finns det något sätt att få koden att markera orden automatiskt när jag redigerar flikarna?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
Jag kan tyvärr inte hjälpa till med detta. Tack för din kommentar.
Denna kommentar minimerades av moderatoren på webbplatsen
TACK, TACK, TACK
Denna kommentar minimerades av moderatoren på webbplatsen
Quisisera resaltar varias palabras al tiempo, como lo puedo hacer?
Denna kommentar minimerades av moderatoren på webbplatsen
Eso es lo que estoy tratando de hacer tamiben (Det är vad jag försöker göra också)
Denna kommentar minimerades av moderatoren på webbplatsen
Om du föredrar att sökningen/markeringen inte är skiftlägeskänslig, ändra raden 'xArr = Split(xCell.Value, xHStr)' till 'xArr = Split(LCase(xCell.Value), LCase(xHStr))'. Jag noterade också att ett tryck på F5 inte kör skriptet (men ger istället ett annat modalt fönster). Jag fick åtkomst till den genom att aktivera fliken Utvecklare med Excel-alternativ (Anpassa menyfliksområdet) och sedan klicka på Makron.
Denna kommentar minimerades av moderatoren på webbplatsen
Tack... detta var till stor hjälp! Finns det något sätt att justera makrot så att det bara markerar hela ord istället för partialer. Till exempel, jag försöker markera ordet "design" men det framhäver "designen" i ordet "designate". Jag vill att det ska hoppa över det ordet om det inte är hela ordet. Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej!
Est-il possible de supprimer la boite de dialogue et de mettre par défaut "äpple" comme mot recherché ?
tack
Denna kommentar minimerades av moderatoren på webbplatsen
Hej PAUC,
Följande kod kan göra dig en tjänst. Vänligen ge det ett försök.
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
Denna kommentar minimerades av moderatoren på webbplatsen
bra

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

Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Andreea,
Om du bara vill markera ordet om det är i början av de markerade cellerna. Följande VBA-kod kan göra dig en tjänst. Vänligen ge det ett försök.
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
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
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. kommer du att få en biljett som inte är ensam och att du vill ha en handbok?

Grazie mille
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Ciao,
Finns dina nummer i olika celler i ett intervall? Om så är fallet kan du skapa två regler för villkorlig formatering (mellan -10 och 0, mellan 0 och 10) för att markera dessa siffror. Om inte, kan du ladda upp en skärmdump av din data?
Denna kommentar minimerades av moderatoren på webbplatsen
Det är väldigt trevligt, thx! Jag undrar om någon vet hur man får det att fungera på Mac? Tack så mycket
Klassad 5 av 5
Denna kommentar minimerades av moderatoren på webbplatsen
hur kunde manuset ändras för att göra följande?

öka teckensnittet med 1 storlek, och
markera flera ord med en körning av skriptet?

Thx!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej t.taln,

Om du vill öka teckenstorleken med 1 och markera flera ord samtidigt, lägg till följande rad efter raden "xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3" i VBA-koden.
Anmärkningar: Du måste känna till den aktuella teckenstorleken för den markerade cellen i förväg och ange sedan ett nummer en storlek större än det ursprungliga ordet. Siffran 12 på raden nedan är teckenstorleken som jag kommer att tilldela de matchande orden. Och den ursprungliga teckenstorleken på ordet är 11.
xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.Size = 12
Denna kommentar minimerades av moderatoren på webbplatsen
Tack det är mycket användbart. Hur kan jag markera ett ord istället för en teckenfärg?

Hälsningar.
Denna kommentar minimerades av moderatoren på webbplatsen
Tack. det var verkligen till hjälp. Kan någon berätta hur man färglägger texten istället för att markera den?

Hälsningar
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Shaik Faiaz hamad,

Excel tillåter inte färgläggning av en del av en cell. Jag är ledsen att jag inte kan hjälpa dig med det här problemet.
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL