Gå til hovedindhold

Hvordan fremhæves specifik tekst i en celle baseret på anden tekst?

I Excel kan det være let for os at fremhæve cellerne baseret på en bestemt tekst, men her vil jeg fremhæve en bestemt tekst i en celle for at gøre den fremragende, men ikke hele cellen. Dette er måske en besværlig for de fleste af os. Denne artikel vil jeg tale om nogle tricks til at løse dette job i Excel.


Fremhæv en eller flere specifikke tekst i flere celler med VBA-kode

For eksempel har jeg en række tekststrenge, og nu vil jeg fremhæve den specifikke tekst “Himmel”I disse celler for at få resultatet som følgende skærmbilleder vist:

For kun at fremhæve en del af teksten i en celle kan følgende VBA-kode hjælpe dig.

1. Vælg de celler, som du vil fremhæve den specifikke tekst, og hold derefter nede ALT + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.

2. Klik indsatte > Moduler, og indsæt følgende kode i Moduler Vindue.

VBA-kode: Fremhæv en del af teksten i en celle:

Sub HighlightStrings()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
cFnd = InputBox("Enter the text string to highlight")
y = Len(cFnd)
For Each Rng In Selection
  With Rng
    m = UBound(Split(Rng.Value, cFnd))
    If m > 0 Then
      xTmp = ""
      For x = 0 To m - 1
        xTmp = xTmp & Split(Rng.Value, cFnd)(x)
        .Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
        xTmp = xTmp & cFnd
      Next
    End If
  End With
Next Rng
Application.ScreenUpdating = True
End Sub

3. Tryk derefter på F5 nøgle til at køre denne kode, og der vises et promptfelt for at minde dig om at indtaste den tekst, du kun vil fremhæve, se skærmbillede:

4. Og klik derefter på OK knap, al den tekst, du har angivet, er kun fremhævet i cellerne, se skærmbillede:

Tips: Hvis du har brug for at fremhæve flere nøgleord fra tekststrengene, skal du anvende nedenstående kode:
VBA-kode: Fremhæv flere nøgleord fra tekststrenge:
Sub HighlightStrings()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
Dim xFNum As Integer
Dim xArrFnd As Variant
Dim xStr As String
cFnd = InputBox("Please enter the text, separate them by comma:")
If Len(cFnd) < 1 Then Exit Sub
xArrFnd = Split(cFnd, ",")
For Each Rng In Selection
With Rng
For xFNum = 0 To UBound(xArrFnd)
xStr = xArrFnd(xFNum)
y = Len(xStr)
m = UBound(Split(Rng.Value, xStr))
If m > 0 Then
xTmp = ""
For x = 0 To m - 1
xTmp = xTmp & Split(Rng.Value, xStr)(x)
.Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
xTmp = xTmp & xStr
Next
End If
Next xFNum
End With
Next Rng
Application.ScreenUpdating = True
End Sub

Derefter skal du i det poppede felt indtaste de nøgleord, du vil fremhæve, (adskil ordene med komma), se skærmbillede:

Klik derefter på OK knap, de angivne ord er fremhævet på én gang, se skærmbilleder:

Bemærk: Ovenstående koder er store og små bogstaver.


Fremhæv en eller flere specifikke tekst i flere celler med en fantastisk funktion

Hvis du ikke er fortrolig med koden i Excel, vil jeg her introducere et let værktøj - Kutools til Excel, Med Marker nøgleord funktion, kan du fremhæve det specifikke et eller flere nøgleord på én gang i cellerne.

Bemærk:At anvende disse Marker nøgleord funktioner, for det første skal du downloade Kutools til Excel, og anvend derefter funktionerne hurtigt og nemt.

Efter installation Kutools til Excelskal du gøre som følger:

1. Klik Kutools > tekst > Marker nøgleord, se skærmbillede:

2. I Marker nøgleord dialogboksen, skal du udføre følgende handlinger:

  • Vælg det dataområde, du vil bruge, fra Range tekstboks;
  • Vælg cellerne, der indeholder de nøgleord, du vil fremhæve, du kan også indtaste nøgleordene manuelt (adskilt med komma) i Søgeord tekstboks
  • Til sidst skal du angive en skrifttypefarve til fremhævning af teksterne med check Marker søgeordsfarver mulighed. (For at farve hele cellerne, der indeholder nøgleordene, skal du vælge Marker celleindholdets farver ekstraudstyr)

3. Klik derefter på Ok knap, alle angivne tekster er fremhævet som vist nedenstående skærmbillede:

Bemærk: Denne funktion er ikke store og små bogstaver, hvis du vil fremhæve teksten med store og små bogstaver, skal du kontrollere match Case i Marker nøgleord dialog boks.


Fremhæv specifik tekst i en celle baseret på anden tekst med VBA-kode

Her er en anden situation, jeg har to kolonner, hvor den første kolonne indeholder tekststrengene, og den anden kolonne er den specifikke tekst, nu skal jeg fremhæve den relative tekst i den første kolonne baseret på den specifikke tekst i den anden kolonne for hver række.

1. Hold nede ALT + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.

2. Klik indsatte > Moduler, og indsæt følgende kode i Moduler Vindue.

VBA-kode: Fremhæv en del af teksten i en celle baseret på anden tekst:

Sub highlight()
'Updateby Extendoffice
    Dim xStr As String
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xChar As String
    Dim I As Long
    Dim J As Long
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
LInput:
    Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "not support multiple columns"
        GoTo LInput
    End If
    If xRg.Columns.Count <> 2 Then
        MsgBox "the selected range can only contain two columns "
        GoTo LInput
    End If
    For I = 0 To xRg.Rows.Count - 1
        xStr = xRg.Range("B1").Offset(I, 0).Value
        With xRg.Range("A1").Offset(I, 0)
            .Font.ColorIndex = 1
            For J = 1 To Len(.Text)
                If Mid(.Text, J, Len(xStr)) = xStr Then .Characters(J, Len(xStr)).Font.ColorIndex = 3
            Next
        End With
    Next I
End Sub

3. Efter at have indsat koden, og tryk på F5 nøgle til at køre det, vises et promptfelt for at minde dig om at vælge dataområdet, som både indeholder tekststrengen og den specifikke tekst, du vil fremhæve og baseret på, se skærmbillede:

4. Og klik derefter på OK -knappen, er al den tilsvarende tekst i den første kolonne baseret på den specifikke tekst i den anden kolonne farvet rød som følgende skærmbillede:


Flere relative artikler:

  • Fed skrifttekst, når sammenkobles to kolonner i Excel
  • I Excel-regneark, efter sammenkædning af to celleværdier med formler, kan du muligvis finde ud af, at det ikke vil give en fed del af teksten i den kombinerede formelcelle. Dette kan nogle gange være irriterende, hvordan kunne du fed teksttekst, når du sammenkæder to kolonner i Excel?
  • Sammenkæd cellekolonner og hold tekstfarve i Excel
  • Som vi alle vidste, vil celleformatering (såsom tekstfarve, antal formatering osv.) Gå tabt, når du sammenkæder eller kombinerer cellekolonner i en kolonne. Denne artikel vil jeg introducere nogle tricks til at kombinere cellekolonnerne i en og holde tekstfarven så let som muligt i Excel.
  • Vis specifik tekst baseret på værdier i en anden kolonne
  • Antag, jeg har en liste over numre, nu vil jeg vise en bestemt tekst i en anden kolonne baseret på denne kolonnetal. For eksempel, hvis cellenummeret er mellem 1-100, vil jeg have, at teksten "Reducer" vises i tilstødende celle. Hvis tallet er mellem 101-200, vises teksten "Stabil", og hvis tallet er større end 200 , vises teksten "Forøg" som vist nedenstående skærmbillede. For at løse denne opgave i Excel kan følgende formler i denne artikel hjælpe dig.
  • Sumceller med tekst og tal i Excel
  • For eksempel har jeg en liste over værdier, der indeholder numeriske og tekstlige strenge, nu vil jeg kun summere tallene baseret på den samme tekst, se på følgende skærmbillede. Normalt kan du ikke opsummere værdierne på listen med tekststreng direkte, her vil jeg introducere dig nogle formler til at håndtere denne opgave.

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
Comments (39)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thank you for "Highlight A Specific Text Within Multiple Cells With VBA Code" It works great. Would you please explain:
I need remove "Highlight"

so what can I do

thanks
This comment was minimized by the moderator on the site
Hello, Mukesh
If you want to delete the specific text from multiple cells, you can apply the Find & Replace feature in Excel.
You just need to enter the specific text that you want to delete into the Find textbox, and leave the Replace box blank, at last, click Replace All to get your results.
Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
This is amazing! One question: Is there any way that an Undo (CTRL+Z) can be used after running this?
This comment was minimized by the moderator on the site
Hello, ChristineW,The vba codes can't support Undo, so when applying the code, you'd better copy and paste the original data to another sheet first.If you use Kutools for Excel, the utility support Undo.
This comment was minimized by the moderator on the site
JUST WANT TO SLAY THANK YOU AS THE VBA FORMULA WORKS FOR ME... IT AWESOME.
This comment was minimized by the moderator on the site
Wow! Thank you!
This comment was minimized by the moderator on the site
Awesome. thanks
This comment was minimized by the moderator on the site
This was very useful, thanks very much!
This comment was minimized by the moderator on the site
Hi,
Please any one help me. I want to highlight the specific number in same sentence. For ex : " 2 days leave scansion" want to highlight only "2" in sentence.
This comment was minimized by the moderator on the site
Hi, anyone help me this. i want to highlight the Specific number in Cell within the same sentence. for Ex : " 2 days leave scansion " in this sentence want to highlight number.
This comment was minimized by the moderator on the site
Hi,
could anyone help me with the following

my Cells in Column "G" contain the text from Column Z to AN, not compulsory that Column g contains all the text from Z to AN.

My work here is to Highlight the text in Column G if it does not available in any of Column Z - AN

For example : Cell G1 contains (Hello sir I am doing well) but The text "Sir" do not exist in Column "Z1" to "AN1"

So i need to highlight the text "Sir"
This comment was minimized by the moderator on the site
i get a run-time error '13', type mismatch when i run the script. any suggestions?
This comment was minimized by the moderator on the site
I had the same issue; I found that one of my collumns were formulas and it was looking in them which was what triggered the error 13. Selected a range wihtout formula containing the text to highlight and it worked.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations