Direkt zum Inhalt

Wie kann man bestimmten Text in einer Zelle basierend auf anderem Text hervorheben?

Autor: Xiaoyang Letzte Änderung: 2021-02-25

In Excel mag es für uns einfach sein, die Zellen basierend auf einem bestimmten Text hervorzuheben, aber hier möchte ich einen bestimmten Text innerhalb einer Zelle hervorheben, um ihn hervorzuheben, aber nicht die gesamte Zelle. Dies ist für die meisten von uns vielleicht problematisch. In diesem Artikel werde ich über einige Tricks zum Lösen dieses Jobs in Excel sprechen.


Markieren Sie einen oder mehrere spezifische Texte in mehreren Zellen mit VBA-Code

Ich habe zum Beispiel eine Reihe von Textzeichenfolgen und möchte jetzt den spezifischen Text hervorheben. “Sky”In diesen Zellen erhalten Sie die folgenden Screenshots:

Um nur einen Teil des Textes in einer Zelle hervorzuheben, kann Ihnen der folgende VBA-Code helfen.

1. Wählen Sie die Zellen aus, in denen Sie den spezifischen Text hervorheben möchten, und halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modul Fenster.

VBA-Code: Markieren Sie einen Textteil in einer Zelle:

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. Dann drücken F5 Wenn Sie die Taste drücken, um diesen Code auszuführen, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, den Text einzugeben, den Sie nur hervorheben möchten. Siehe Screenshot:

4. Und dann klick OK Schaltfläche, der gesamte von Ihnen angegebene Text wurde nur in den Zellen hervorgehoben, siehe Screenshot:

Tips: Wenn Sie mehrere Schlüsselwörter aus den Textzeichenfolgen hervorheben müssen, wenden Sie den folgenden Code an:
VBA-Code: Markieren Sie mehrere Schlüsselwörter aus Textzeichenfolgen:
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

Geben Sie dann in das ausgeblendete Feld die Schlüsselwörter ein, die Sie hervorheben möchten (trennen Sie die Wörter durch ein Komma). Siehe Screenshot:

Und dann klicken OK Schaltfläche, die angegebenen Wörter wurden sofort hervorgehoben, siehe Screenshots:

Note: Bei den oben genannten Codes wird zwischen Groß- und Kleinschreibung unterschieden.


Markieren Sie einen oder mehrere spezifische Texte in mehreren Zellen mit einer erstaunlichen Funktion

Wenn Sie mit dem Code in Excel nicht vertraut sind, werde ich hier ein einfaches Tool vorstellen - Kutools for ExcelMit seinen Schlüsselwort markieren Mit dieser Funktion können Sie ein oder mehrere Schlüsselwörter gleichzeitig in den Zellen hervorheben.

Hinweis:Um diese anzuwenden Schlüsselwort markieren Funktionen sollten Sie zunächst die herunterladen Kutools for Excelund wenden Sie die Funktionen dann schnell und einfach an.

Nach der Installation Kutools for ExcelBitte gehen Sie wie folgt vor:

1. Klicken Sie Kutoolen > Text > Schlüsselwort markieren, siehe Screenshot:

2. In dem Schlüsselwort markieren Im Dialogfeld führen Sie bitte die folgenden Vorgänge aus:

  • Wählen Sie den Datenbereich aus, den Sie verwenden möchten Abdeckung Textfeld;
  • Wählen Sie die Zellen aus, die die Schlüsselwörter enthalten, die Sie hervorheben möchten. Sie können die Schlüsselwörter auch manuell (durch Komma getrennt) in das Feld eingeben Stichwort (Keyword) Textfeld
  • Zuletzt sollten Sie eine Schriftfarbe angeben, um die Texte durch Häkchen hervorzuheben Markieren Sie die Keyword-Farben Möglichkeit. (Um die gesamten Zellen mit den Schlüsselwörtern einzufärben, wählen Sie die Option Markieren Sie die Zelleninhaltsfarben Option)

3. Dann klick Ok Schaltfläche, alle angegebenen Texte wurden wie folgt hervorgehoben: Screenshot gezeigt:

Note: Bei dieser Funktion wird nicht zwischen Groß- und Kleinschreibung unterschieden. Wenn Sie den Text mit Groß- und Kleinschreibung markieren möchten, überprüfen Sie dies bitte Groß-/Kleinschreibung der Schlüsselwort markieren Dialogbox.


Markieren Sie bestimmten Text in einer Zelle basierend auf anderem Text mit VBA-Code

Hier ist eine andere Situation: Ich habe zwei Spalten, in denen die erste Spalte die Textzeichenfolgen und die zweite Spalte den spezifischen Text enthält. Jetzt muss ich den relativen Text in der ersten Spalte basierend auf dem spezifischen Text in der zweiten Spalte für jede Spalte hervorheben Reihe.

1. Halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modul Fenster.

VBA-Code: Markieren Sie einen Teil des Textes in einer Zelle basierend auf anderem Text:

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. Nachdem Sie den Code eingefügt haben, drücken Sie F5 Wenn Sie die Taste zum Ausführen drücken, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, den Datenbereich auszuwählen, der sowohl die Textzeichenfolge als auch den spezifischen Text enthält, den Sie hervorheben möchten und auf dem Sie basieren (siehe Abbildung):

4. Und dann klick OK Klicken Sie auf die Schaltfläche. Der gesamte entsprechende Text in der ersten Spalte, basierend auf dem spezifischen Text in der zweiten Spalte, wurde wie im folgenden Screenshot rot gefärbt:


Weitere relative Artikel:

  • Fettgedruckter Teiletext beim Verketten von zwei Spalten in Excel
  • Im Excel-Arbeitsblatt wird nach dem Verketten von zwei Zellenwerten mit Formeln möglicherweise kein Teil des Textes in der kombinierten Formelzelle fett gedruckt. Dies kann manchmal ärgerlich sein. Wie können Sie Teiltext fett fetten, wenn Sie zwei Spalten in Excel verketten?
  • Verketten Sie Zellspalten und behalten Sie die Textfarbe in Excel bei
  • Wie wir alle wissen, geht beim Verketten oder Kombinieren von Zellenspalten zu einer Spalte die Zellenformatierung (z. B. Textschriftfarbe, Zahlenformatierung usw.) verloren. In diesem Artikel werde ich einige Tricks vorstellen, um die Zellenspalten zu einer zu kombinieren und die Textfarbe in Excel so einfach wie möglich zu halten.
  • Anzeigen von spezifischem Text basierend auf Werten in einer anderen Spalte
  • Angenommen, ich habe eine Liste mit Zahlen. Jetzt möchte ich einen bestimmten Text in einer anderen Spalte basierend auf diesen Spaltennummern anzeigen. Wenn die Zellennummer beispielsweise zwischen 1 und 100 liegt, soll der Text "Verringern" in der benachbarten Zelle angezeigt werden. Wenn die Nummer zwischen 101 und 200 liegt, wird ein Text "Stabil" angezeigt, und wenn die Nummer größer als 200 ist wird ein Text "Erhöhen" angezeigt, wie im folgenden Screenshot gezeigt. Um diese Aufgabe in Excel zu lösen, können Ihnen die folgenden Formeln in diesem Artikel helfen.
  • Summenzellen mit Text und Zahlen in Excel
  • Zum Beispiel habe ich eine Liste von Werten, die numerische und textuelle Zeichenfolgen enthalten. Jetzt möchte ich nur die Zahlen summieren, die auf demselben Text basieren. Schauen Sie sich den folgenden Screenshot an. Normalerweise können Sie die Werte in der Liste nicht direkt mit einer Textzeichenfolge summieren. Hier werde ich Ihnen einige Formeln für diese Aufgabe vorstellen.

Beste Office-Produktivitätstools

🤖 Kutools KI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Erstellen Sie benutzerdefinierte Formeln  |  Analysieren Sie Daten und erstellen Sie Diagramme  |  Rufen Sie Kutools-Funktionen auf...
Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...

Beschreibung


Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
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
There are no comments posted here yet
Load More
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations