Come evidenziare un testo specifico all'interno di una cella in base ad altro testo?
In Excel, potrebbe essere facile per noi evidenziare le celle in base a un testo specifico, ma qui voglio evidenziare un testo specifico all'interno di una cella per renderlo più visibile, non l'intera cella. Questo potrebbe risultare complicato per molti di noi. In questo articolo, parlerò di alcuni trucchi per risolvere questa operazione in Excel.

Evidenzia uno o più testi specifici all'interno di più celle con il codice VBA
Ad esempio, ho un intervallo di stringhe di testo e ora voglio evidenziare il testo specifico “Sky” in queste celle per ottenere il risultato mostrato nelle seguenti schermate:
![]() | ![]() | ![]() |
Per evidenziare solo parte del testo all'interno di una cella, il seguente codice VBA può aiutarti.
1. Seleziona le celle in cui desideri evidenziare il testo specifico, quindi tieni premuti i tasti ALT + F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Clicca su Inserisci > Modulo e incolla il seguente codice nella Finestra del Modulo.
Codice VBA: Evidenzia una parte del testo all'interno di una cella:
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. Quindi premi il tasto F5 per eseguire questo codice e apparirà una finestra di dialogo che ti chiederà di inserire il testo che desideri evidenziare, vedi screenshot:
4. Dopodiché, clicca sul pulsante OK e tutto il testo specificato sarà evidenziato solo all'interno delle celle, vedi screenshot:
![]() | ![]() | ![]() |
Codice VBA: Evidenzia più parole chiave dalle stringhe di testo:
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
Quindi, nella finestra visualizzata, inserisci le parole chiave che desideri evidenziare (separa le parole con una virgola), vedi screenshot:
Dopodiché, clicca sul pulsante OK e le parole specificate saranno evidenziate immediatamente, vedi screenshot:
![]() | ![]() | ![]() |
Nota: I codici sopra sono sensibili alle maiuscole/minuscole.
Evidenzia uno o più testi specifici all'interno di più celle con una funzionalità straordinaria
Se non sei familiare con il codice in Excel, qui introdurrò uno strumento semplice - Kutools per Excel, con la sua funzione Contrassegna Parole Chiave, puoi evidenziare una o più parole chiave contemporaneamente all'interno delle celle.
Dopo aver installato Kutools per Excel, procedi come segue:
1. Clicca su Kutools > Testo > Contrassegna Parole Chiave, vedi screenshot:
2. Nella finestra di dialogo Contrassegna Parole Chiave, effettua le seguenti operazioni:
- Seleziona l'intervallo dati che vuoi utilizzare dalla casella di testo Intervallo;
- Seleziona le celle che contengono le parole chiave che desideri evidenziare, oppure puoi inserire manualmente le parole chiave (separate da virgole) nella casella di testo Parole Chiave.
- Infine, dovresti specificare un colore del carattere per evidenziare i testi selezionando l'opzione Colore del font della parola chiave. (Per colorare l'intera cella contenente le parole chiave, seleziona l'opzione Colore del contenuto della cella).
3. Quindi, clicca sul pulsante Ok e tutti i testi specificati saranno evidenziati come mostrato nello screenshot sottostante:
Nota: Questa funzionalità non è sensibile alle maiuscole/minuscole. Se desideri evidenziare il testo con distinzione tra maiuscole e minuscole, seleziona Maiuscole/minuscole nella finestra di dialogo Contrassegna Parole Chiave.
Evidenzia un testo specifico all'interno di una cella in base ad altro testo con il codice VBA
Ecco un'altra situazione: ho due colonne, la prima contiene le stringhe di testo e la seconda il testo specifico. Ora devo evidenziare il testo relativo nella prima colonna in base al testo specifico della seconda colonna per ogni riga.
1. Tieni premuti i tasti ALT + F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Clicca su Inserisci > Modulo e incolla il seguente codice nella Finestra del Modulo.
Codice VBA: Evidenzia una parte del testo all'interno di una cella in base ad altro testo:
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. Dopo aver incollato il codice, premi il tasto F5 per eseguirlo, apparirà una finestra di dialogo che ti chiederà di selezionare l'intervallo dati che contiene sia la stringa di testo che il testo specifico che desideri evidenziare e su cui basarti, vedi screenshot:
4. Dopodiché, clicca sul pulsante OK e tutto il testo corrispondente nella prima colonna in base al testo specifico nella seconda colonna sarà colorato di rosso come mostrato nello screenshot seguente:
Altri articoli correlati:
- Grassetto Parte Del Testo Durante La Concatenazione Di Due Colonne In Excel
- Nel foglio di lavoro di Excel, dopo aver concatenato due valori di cella con formule, potresti notare che non è possibile mettere in grassetto parte del testo nella cella combinata. A volte ciò può essere fastidioso, come si potrebbe rendere parte del testo in grassetto durante la concatenazione di due colonne in Excel?
- Concatena Colonne Di Celle E Mantieni Il Colore Del Testo In Excel
- Come tutti sappiamo, quando si concatenano o si combinano colonne di celle in una sola colonna, la formattazione delle celle (come il colore del carattere, la formattazione dei numeri, ecc.) andrà persa. In questo articolo, introdurrò alcuni trucchi per combinare le colonne di celle in una sola e mantenere il colore del testo il più facilmente possibile in Excel.
- Visualizza Testo Specifico In Base Ai Valori In Un'altra Colonna
- Supponendo di avere una lista di numeri e voglio visualizzare del testo specifico in un'altra colonna in base a questi numeri. Ad esempio, se il numero della cella è compreso tra 1-100, voglio che il testo “Diminuzione” venga visualizzato nella cella adiacente; se il numero è compreso tra 101-200, viene visualizzato il testo “Stabile”; e se il numero è maggiore di 200, viene visualizzato il testo “Aumento”, come mostrato nello screenshot seguente. Per risolvere questo compito in Excel, le seguenti formule in questo articolo possono aiutarti.
- Somma Celle Con Testo E Numeri In Excel
- Ad esempio, ho un elenco di valori contenenti stringhe numeriche e testuali, ora voglio sommare solo i numeri in base allo stesso testo, guarda lo screenshot seguente. Normalmente, non puoi sommare direttamente i valori nell'elenco con stringhe di testo, qui ti presenterò alcune formule per affrontare questo compito.
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!