Cum să evidențiați textul specific dintr-o celulă pe baza altui text?
În Excel, poate fi ușor pentru noi să evidențiem celulele pe baza unui anumit text, dar, aici, doresc să evidențiez un anumit text într-o celulă pentru a-l face remarcabil, dar nu întreaga celulă. Poate că este o problemă pentru majoritatea dintre noi. În acest articol, voi vorbi despre câteva trucuri pentru rezolvarea acestei sarcini în Excel.
Evidențiați unul sau mai multe texte specifice în mai multe celule cu cod VBA
De exemplu, am o serie de șiruri de text și acum vreau să evidențiez textul specific „Cer”În aceste celule pentru a obține rezultatul, după cum urmează:
Pentru a evidenția doar o parte a textului dintr-o celulă, următorul cod VBA vă poate ajuta.
1. Selectați celulele pe care doriți să le evidențiați textul specific, apoi țineți apăsat butonul ALT + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.
2. Clic Insera > Moduleși lipiți următorul cod în Module Fereastră.
Cod VBA: Evidențiați o parte a textului într-o celulă:
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. Apoi apăsați F5 tasta pentru a rula acest cod și va apărea o casetă de solicitare pentru a vă reaminti să introduceți textul pe care doriți să îl evidențiați numai, vedeți captura de ecran:
4. Apoi faceți clic pe OK buton, tot textul pe care l-ați specificat a fost evidențiat numai în celule, consultați captura de ecran:
Cod VBA: evidențiați mai multe cuvinte cheie din șiruri de text:
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
Apoi, în caseta deschisă, introduceți cuvintele cheie pe care doriți să le evidențiați (separați cuvintele cu virgulă), vedeți captura de ecran:
Apoi, faceți clic OK , cuvintele specificate au fost evidențiate simultan, vedeți capturi de ecran:
notițe: Codurile de mai sus sunt sensibile la majuscule și minuscule.
Evidențiați unul sau mai multe texte specifice în mai multe celule cu o caracteristică uimitoare
Dacă nu sunteți familiarizați cu codul din Excel, aici, voi introduce un instrument ușor - Kutools pentru Excel, Cu său Marcați cuvântul cheie caracteristică, puteți evidenția unul sau mai multe cuvinte cheie în același timp în celule.
După instalare Kutools pentru Excel, vă rugăm să faceți următoarele:
1. Clic Kutools > Text > Marcați cuvântul cheie, vezi captura de ecran:
2. În Marcați cuvântul cheie caseta de dialog, vă rugăm să efectuați următoarele operații:
- Selectați intervalul de date pe care doriți să îl utilizați din Gamă casetă de text;
- Selectați celulele conține cuvintele cheie pe care doriți să le evidențiați, puteți introduce cuvintele cheie manual (separate prin virgulă) în Cuvânt cheie casetă de text
- În cele din urmă, ar trebui să specificați o culoare de font pentru a evidenția textele prin bifare Marcați culorile cuvintelor cheie opțiune. (Pentru a colora întreaga celulă care conține cuvintele cheie, selectați Marcați culorile conținutului celulei opțiune)
3. Apoi apasa Ok buton, toate textele specificate au fost evidențiate după cum se arată în imaginea de mai jos:
notițe: Această caracteristică nu ține cont de majuscule și minuscule, dacă doriți să evidențiați textul cu sensibilitate la majuscule și minuscule, vă rugăm să verificați Se potrivește caz în Marcați cuvântul cheie căsuță de dialog.
Evidențiați textul specific într-o celulă pe baza altui text cu cod VBA
Iată o altă situație, am două coloane în care prima coloană conține șiruri de text și a doua coloană este textul specific, acum, trebuie să evidențiez textul relativ în prima coloană pe baza textului specific din a doua coloană pentru fiecare rând.
1. Țineți apăsat butonul ALT + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.
2. Clic Insera > Moduleși lipiți următorul cod în Module Fereastră.
Cod VBA: evidențiați o parte a textului într-o celulă bazată pe alt 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. După lipirea codului și apăsați F5 tasta pentru al rula, se va afișa o casetă de solicitare pentru a vă reaminti să selectați intervalul de date care conține șirul de text și textul specific pe care doriți să le evidențiați și pe care să le bazați, a se vedea captura de ecran:
4. Apoi faceți clic pe OK butonul, tot textul corespunzător din prima coloană bazat pe textul specific din a doua coloană a fost colorat în roșu ca următoarea captură de ecran:
Mai multe articole relative:
- Text în parte cu caractere aldine când se concatenează două coloane în Excel
- În foaia de lucru Excel, după ce ați concatenat două valori de celule cu formule, este posibil să găsiți că nu va îndrăzni o parte din text în celula de formulă combinată. Acest lucru poate fi deranjant uneori, cum ați putea îndrăzni textul părții când concatenați două coloane în Excel?
- Concatenează coloanele celulei și păstrează culoarea textului în Excel
- Așa cum știam cu toții, în timp ce concatenați sau combinați coloane de celule într-o singură coloană, formatarea celulei (cum ar fi culoarea fontului textului, formatarea numărului etc.) se va pierde. În acest articol, voi introduce câteva trucuri pentru a combina coloanele de celule într-una și pentru a păstra culoarea textului cât mai ușor posibil în Excel.
- Afișați text specific bazat pe valori într-o altă coloană
- Presupunând că am o listă de numere, acum vreau să afișez un anumit text într-o altă coloană pe baza acestor numere de coloană. De exemplu, dacă numărul celulei este cuprins între 1-100, vreau ca textul „Scădere” să fie afișat în celula alăturată, dacă numărul este între 101-200, este afișat un text „Stabil” și dacă numărul mai mare de 200 , se afișează un text „Creștere” după cum se arată în următoarea captură de ecran. Pentru a rezolva această sarcină în Excel, următoarele formule din acest articol vă pot ajuta.
- Suma de celule cu text și numere în Excel
- De exemplu, am o listă de valori care conțin șiruri numerice și textuale, acum, vreau să însumez numai numerele pe baza aceluiași text, uitați-vă la următoarea captură de ecran. În mod normal, nu puteți însuma direct valorile din listă cu șir de text direct, aici, vă voi prezenta câteva formule pentru a face față acestei sarcini.
Cele mai bune instrumente de productivitate de birou
Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp. Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...
Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!