Μετάβαση στο κύριο περιεχόμενο

Πώς να επισημάνετε συγκεκριμένο κείμενο μέσα σε ένα κελί με βάση άλλο κείμενο;

Στο Excel, μπορεί να είναι εύκολο για εμάς να επισημάνουμε τα κελιά με βάση ένα συγκεκριμένο κείμενο, αλλά, εδώ, θέλω να επισημάνω ένα συγκεκριμένο κείμενο μέσα σε ένα κελί για να το κάνουμε εξαιρετικό αλλά όχι ολόκληρο το κελί. Αυτό ίσως είναι ενοχλητικό για τους περισσότερους από εμάς. Σε αυτό το άρθρο, θα μιλήσω για μερικά κόλπα για την επίλυση αυτής της εργασίας στο Excel.


Επισημάνετε ένα ή περισσότερα συγκεκριμένα κείμενα σε πολλά κελιά με κώδικα VBA

Για παράδειγμα, έχω μια σειρά από συμβολοσειρές κειμένου και τώρα θέλω να επισημάνω το συγκεκριμένο κείμενο "Ουρανός"Σε αυτά τα κελιά για να λάβετε το αποτέλεσμα όπως εμφανίζονται τα ακόλουθα στιγμιότυπα οθόνης:

Για να επισημάνετε μόνο ένα μέρος του κειμένου μέσα σε ένα κελί, ο ακόλουθος κώδικας VBA μπορεί να σας βοηθήσει.

1. Επιλέξτε τα κελιά που θέλετε να επισημάνετε το συγκεκριμένο κείμενο και, στη συνέχεια, κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Μονάδα μέτρησης Παράθυρο.

Κωδικός VBA: Επισημάνετε ένα μέρος του κειμένου μέσα σε ένα κελί:

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. Στη συνέχεια πατήστε F5 για να εκτελέσετε αυτόν τον κωδικό και θα εμφανιστεί ένα πλαίσιο προτροπής για να σας υπενθυμίσει ότι εισάγετε το κείμενο που θέλετε να επισημάνετε μόνο, δείτε το στιγμιότυπο οθόνης:

4. Και στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, όλο το κείμενο που καθορίσατε έχει επισημανθεί μόνο μέσα στα κελιά, δείτε το στιγμιότυπο οθόνης:

Συμβουλές: Εάν πρέπει να επισημάνετε πολλές λέξεις-κλειδιά από τις συμβολοσειρές κειμένου, εφαρμόστε τον παρακάτω κώδικα:
Κωδικός VBA: Επισημάνετε πολλές λέξεις-κλειδιά από συμβολοσειρές κειμένου:
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

Στη συνέχεια, στο αναδυόμενο πλαίσιο, εισαγάγετε τις λέξεις-κλειδιά που θέλετε να επισημάνετε, (διαχωρίστε τις λέξεις με κόμμα), δείτε το στιγμιότυπο οθόνης:

Και μετά, κάντε κλικ στο OK κουμπί, οι καθορισμένες λέξεις έχουν επισημανθεί ταυτόχρονα, δείτε στιγμιότυπα οθόνης:

Note: Οι παραπάνω κωδικοί είναι πεζά.


Επισημάνετε ένα ή περισσότερα συγκεκριμένα κείμενα σε πολλά κελιά με μια καταπληκτική δυνατότητα

Εάν δεν είστε εξοικειωμένοι με τον κωδικό στο Excel, εδώ, θα παρουσιάσω ένα εύκολο εργαλείο - Kutools για Excel, Με τους Επισήμανση λέξης-κλειδιού δυνατότητα, μπορείτε να επισημάνετε τη συγκεκριμένη μία ή περισσότερες λέξεις-κλειδιά ταυτόχρονα μέσα στα κελιά.

Σημείωση:Για να τα εφαρμόσετε Επισήμανση λέξης-κλειδιού χαρακτηριστικά, πρώτον, πρέπει να κατεβάσετε το Kutools για Excelκαι, στη συνέχεια, εφαρμόστε τις δυνατότητες γρήγορα και εύκολα.

Μετά την εγκατάσταση Kutools για Excel, κάντε τα εξής:

1. Κλίκ Kutools > Κείμενο > Επισήμανση λέξης-κλειδιού, δείτε το στιγμιότυπο οθόνης:

2. Στην Επισήμανση λέξης-κλειδιού πλαίσιο διαλόγου, κάντε τις ακόλουθες λειτουργίες:

  • Επιλέξτε το εύρος δεδομένων που θέλετε να χρησιμοποιήσετε από το Σειρά πλαίσιο κειμένου;
  • Επιλέξτε τα κελιά που περιέχουν τις λέξεις-κλειδιά που θέλετε να επισημάνετε, μπορείτε επίσης να εισαγάγετε τις λέξεις-κλειδιά χειροκίνητα (ξεχωριστά με κόμμα) στο Λέξη-κλειδί πλαίσιο κειμένου
  • Επιτέλους, πρέπει να καθορίσετε ένα χρώμα γραμματοσειράς για να επισημάνετε τα κείμενα με επιταγή Επισήμανση χρωμάτων λέξεων-κλειδιών επιλογή. (Για να χρωματίσετε ολόκληρα τα κελιά που περιέχουν τις λέξεις-κλειδιά, επιλέξτε το Σημειώστε τα χρώματα περιεχομένου κελιού προαιρετικό)

3. Στη συνέχεια, κάντε κλικ στο κουμπί Ok κουμπί, όλα τα καθορισμένα κείμενα έχουν επισημανθεί όπως φαίνεται παρακάτω στο στιγμιότυπο οθόνης:

Note: Αυτή η λειτουργία δεν είναι κεφαλαία, αν θέλετε να επισημάνετε το κείμενο με κεφαλαία, ελέγξτε Match Case στο Επισήμανση λέξης-κλειδιού κουτί διαλόγου.


Επισημάνετε συγκεκριμένο κείμενο μέσα σε ένα κελί με βάση άλλο κείμενο με κώδικα VBA

Εδώ είναι μια άλλη κατάσταση, έχω δύο στήλες που η πρώτη στήλη περιέχει τις συμβολοσειρές κειμένου και η δεύτερη στήλη είναι το συγκεκριμένο κείμενο, τώρα, πρέπει να επισημάνω το σχετικό κείμενο στην πρώτη στήλη με βάση το συγκεκριμένο κείμενο στη δεύτερη στήλη για κάθε σειρά.

1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Μονάδα μέτρησης Παράθυρο.

Κωδικός VBA: Επισημάνετε ένα μέρος κειμένου μέσα σε ένα κελί με βάση άλλο κείμενο:

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. Αφού επικολλήσετε τον κωδικό και πατήστε F5 για να το εκτελέσετε, θα εμφανιστεί ένα πλαίσιο προτροπής για να σας υπενθυμίσει ότι επιλέγετε το εύρος δεδομένων που περιέχει και τη συμβολοσειρά κειμένου και το συγκεκριμένο κείμενο στο οποίο θέλετε να επισημάνετε και με βάση, δείτε το στιγμιότυπο οθόνης:

4. Και στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, όλο το αντίστοιχο κείμενο στην πρώτη στήλη με βάση το συγκεκριμένο κείμενο στη δεύτερη στήλη έχει χρωματιστεί κόκκινο ως εξής στιγμιότυπο οθόνης:


Σχετικά άρθρα:

  • Έντονο μέρος κειμένου κατά τη συνένωση δύο στηλών στο Excel
  • Στο φύλλο εργασίας του Excel, μετά τη συνένωση δύο τιμών κελιών με τύπους, ενδέχεται να βρείτε ότι δεν θα τολμηρή μέρος του κειμένου στο συνδυασμένο κελί τύπων. Αυτό μπορεί να είναι ενοχλητικό μερικές φορές, πώς θα μπορούσατε να γράψετε έντονο κείμενο κατά τη συνένωση δύο στηλών στο Excel;
  • Συνδυάστε τις στήλες κελιού και διατηρήστε το χρώμα κειμένου στο Excel
  • Όπως όλοι γνωρίζουμε, ενώ συνδυάζουμε ή συνδυάζουμε στήλες κελιού σε μία στήλη, η μορφοποίηση κελιού (όπως χρώμα γραμματοσειράς κειμένου, μορφοποίηση αριθμών, κ.λπ.) θα χαθεί. Αυτό το άρθρο, θα παρουσιάσω μερικά κόλπα για να συνδυάσω τις στήλες κελιού σε μία και να διατηρήσω το χρώμα του κειμένου όσο το δυνατόν πιο εύκολα στο Excel.
  • Εμφάνιση συγκεκριμένου κειμένου με βάση τιμές σε άλλη στήλη
  • Υποθέτοντας, έχω μια λίστα αριθμών, τώρα, θέλω να εμφανίσω κάποιο συγκεκριμένο κείμενο σε μια άλλη στήλη με βάση αυτούς τους αριθμούς στηλών. Για παράδειγμα, εάν ο αριθμός κελιού είναι μεταξύ 1-100, θέλω το κείμενο "Μείωση" να εμφανίζεται σε παρακείμενο κελί, εάν ο αριθμός είναι μεταξύ 101-200, εμφανίζεται ένα κείμενο "Σταθερό" και εάν ο αριθμός είναι μεγαλύτερος από 200 , εμφανίζεται ένα κείμενο "Αύξηση" όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης. Για να επιλύσετε αυτήν την εργασία στο Excel, οι ακόλουθοι τύποι σε αυτό το άρθρο μπορεί να σας βοηθήσουν.
  • Αθροίστε τα κελιά με κείμενο και αριθμούς στο Excel
  • Για παράδειγμα, έχω μια λίστα τιμών που περιέχουν αριθμητικές και συμβολοσειρές κειμένου, τώρα, θέλω να αθροίσω μόνο τους αριθμούς που βασίζονται στο ίδιο κείμενο, δείτε το παρακάτω στιγμιότυπο οθόνης. Κανονικά, δεν μπορείτε να αθροίσετε τις τιμές στη λίστα με συμβολοσειρά κειμένου απευθείας, εδώ, θα σας παρουσιάσω μερικούς τύπους για την αντιμετώπιση αυτής της εργασίας.

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

kte καρτέλα 201905


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
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