Przejdź do głównej zawartości

Jak wyróżnić określony tekst w komórce na podstawie innego tekstu?

W programie Excel może być nam łatwo wyróżnić komórki na podstawie określonego tekstu, ale tutaj chcę podświetlić określony tekst w komórce, aby był wyjątkowy, ale nie całą komórkę. Może to być kłopotliwe dla większości z nas. W tym artykule omówię kilka sztuczek do rozwiązania tego zadania w programie Excel.


Podświetl jeden lub więcej określonego tekstu w wielu komórkach za pomocą kodu VBA

Na przykład mam zakres ciągów tekstowych, a teraz chcę podświetlić konkretny tekst „Niebo”W tych komórkach, aby uzyskać wynik w postaci poniższych zrzutów ekranu:

Aby wyróżnić tylko część tekstu w komórce, może Ci pomóc poniższy kod VBA.

1. Wybierz komórki, które chcesz podświetlić określony tekst, a następnie przytrzymaj klawisz ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.

Kod VBA: Podświetl część tekstu w komórce:

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. Następnie naciśnij F5 klawisz, aby uruchomić ten kod, a pojawi się okno zachęty przypominające o wprowadzeniu tekstu, który chcesz tylko podświetlić, patrz zrzut ekranu:

4. A następnie kliknij OK przycisk, cały określony tekst został podświetlony tylko w komórkach, patrz zrzut ekranu:

Tips: Jeśli chcesz zaznaczyć wiele słów kluczowych z ciągów tekstowych, zastosuj poniższy kod:
Kod VBA: Podświetl wiele słów kluczowych z ciągów tekstowych:
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

Następnie w wyskakującym okienku wprowadź słowa kluczowe, które chcesz wyróżnić (oddziel słowa przecinkiem), patrz zrzut ekranu:

A następnie kliknij OK przycisk, określone słowa zostały od razu zaznaczone, zobacz zrzuty ekranu:

Note: W powyższych kodach rozróżniana jest wielkość liter.


Podświetl jeden lub więcej określonego tekstu w wielu komórkach za pomocą niesamowitej funkcji

Jeśli nie znasz kodu w Excelu, przedstawię tutaj proste narzędzie - Kutools dla programu Excel, Z siedzibą w Zaznacz słowo kluczowe możesz zaznaczyć jedno lub więcej słów kluczowych jednocześnie w komórkach.

Uwaga:Aby zastosować te Zaznacz słowo kluczowe funkcje, po pierwsze, należy pobrać plik Kutools dla programu Excel, a następnie szybko i łatwo zastosuj funkcje.

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Kliknij Kutools > Tekst > Zaznacz słowo kluczowezobacz zrzut ekranu:

2, w Zaznacz słowo kluczowe w oknie dialogowym, wykonaj następujące operacje:

  • Wybierz zakres danych, którego chcesz użyć z łodzie pole tekstowe;
  • Wybierz komórki zawierające słowa kluczowe, które chcesz podświetlić, możesz również wprowadzić słowa kluczowe ręcznie (oddzielone przecinkami) do pliku słowo kluczowe pole tekstowe
  • Na koniec powinieneś określić kolor czcionki do podświetlania tekstów przez czek Oznacz kolory słów kluczowych opcja. (Aby pokolorować całe komórki zawierające słowa kluczowe, zaznacz Zaznacz kolory zawartości komórki opcjonalnie)

3. Następnie kliknij Ok przycisk, wszystkie określone teksty zostały podświetlone, jak na poniższym zrzucie ekranu:

Note: Ta funkcja nie rozróżnia wielkości liter, jeśli chcesz wyróżnić tekst z uwzględnieniem wielkości liter, sprawdź Mecz Case Zaznacz słowo kluczowe okno dialogowe.


Podświetl określony tekst w komórce na podstawie innego tekstu z kodem VBA

Oto inna sytuacja, mam dwie kolumny, w których pierwsza kolumna zawiera ciągi tekstowe, a druga kolumna to określony tekst, teraz muszę podświetlić względny tekst w pierwszej kolumnie na podstawie określonego tekstu w drugiej kolumnie dla każdego rząd.

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.

Kod VBA: Podświetl część tekstu w komórce na podstawie innego tekstu:

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. Po wklejeniu kodu i naciśnij F5 Aby go uruchomić, pojawi się okienko zachęty przypominające o wyborze zakresu danych, który zawiera zarówno ciąg tekstowy, jak i określony tekst, który chcesz wyróżnić i na podstawie którego chcesz go wyróżnić, patrz zrzut ekranu:

4. A następnie kliknij OK przycisk, cały odpowiedni tekst w pierwszej kolumnie w oparciu o konkretny tekst w drugiej kolumnie został pokolorowany na czerwono, jak na poniższym zrzucie ekranu:


Więcej artykułów względnych:

  • Pogrubiony tekst części po połączeniu dwóch kolumn w programie Excel
  • W arkuszu programu Excel po połączeniu dwóch wartości komórek z formułami może się okazać, że część tekstu w połączonej komórce formuły nie zostanie pogrubiona. Czasami może to być denerwujące, w jaki sposób można pogrubić tekst części podczas łączenia dwóch kolumn w programie Excel?
  • Połącz kolumny komórek i zachowaj kolor tekstu w programie Excel
  • Jak wszyscy wiemy, podczas konkatenacji lub łączenia kolumn komórek w jedną kolumnę, formatowanie komórki (takie jak kolor czcionki tekstu, formatowanie liczb itp.) Zostanie utracone. W tym artykule przedstawię kilka sztuczek, aby połączyć kolumny komórek w jedną i jak najłatwiej zachować kolor tekstu w programie Excel.
  • Wyświetl określony tekst na podstawie wartości w innej kolumnie
  • Przypuśćmy, że mam listę liczb, teraz chcę wyświetlić określony tekst w innej kolumnie na podstawie numerów tych kolumn. Na przykład, jeśli numer komórki zawiera się w przedziale 1-100, chcę, aby w sąsiedniej komórce był wyświetlany tekst „Zmniejsz”, jeśli liczba zawiera się w przedziale 101–200, wyświetlany jest tekst „Stabilny”, a jeśli liczba jest większa niż 200 , zostanie wyświetlony tekst „Zwiększ”, jak pokazano na poniższym zrzucie ekranu. Aby rozwiązać to zadanie w programie Excel, mogą Ci pomóc następujące formuły w tym artykule.
  • Sumuj komórki z tekstem i liczbami w programie Excel
  • Na przykład mam listę wartości zawierającą ciągi liczbowe i tekstowe, teraz chcę zsumować tylko liczby oparte na tym samym tekście, spójrz na poniższy zrzut ekranu. Zwykle nie można bezpośrednio zsumować wartości z listy za pomocą ciągu tekstowego, tutaj przedstawię kilka formuł, które pozwolą sobie z tym zadaniem.

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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