İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Digər mətnlərə əsasən bir hüceyrədə xüsusi mətni necə göstərmək olar?

Excel-də, müəyyən bir mətnə ​​əsaslanan hüceyrələri vurğulamaq bizim üçün asan ola bilər, amma burada, bütün hüceyrə deyil, görkəmli olmaq üçün bir hüceyrə içərisində xüsusi mətni vurğulamaq istəyirəm. Bu, əksəriyyət üçün çətin ola bilər. Bu yazı, bu işi Exceldə həll etmək üçün bəzi fəndlər haqqında danışacağam.

VBA kodu ilə bir neçə hüceyrə daxilində xüsusi mətni seçin

VBA kodu ilə digər mətnlərə əsasən bir hüceyrə daxilində xüsusi mətni seçin


arrow mavi sağ bubble VBA kodu ilə bir neçə hüceyrə daxilində xüsusi mətni seçin


Məsələn, bir sıra mətn dizimim var və indi xüsusi mətni vurğulamaq istəyirəm "Səma"Bu hüceyrələrdə aşağıdakı ekran görüntüsü kimi nəticə almaq üçün:

doc xüsusi mətn 1 vurğulamaq

Bir hüceyrə içərisində mətnin yalnız bir hissəsini vurğulamaq üçün aşağıdakı VBA kodu sizə kömək edə bilər.

1. Xüsusi mətni vurğulamaq istədiyiniz hüceyrələri seçin və sonra basıb saxlayın ALT + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

2. Basın Taxmaq > Modules, və aşağıdakı kodu yapışdırın Modules Pəncərə.

VBA kodu: Bir hüceyrə içərisində mətnin bir hissəsini seçin:

Sub HighlightStrings()
'Updateby Extendoffice 20160704
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. Sonra basın F5 bu kodu çalıştırmak üçün açar düyməsini basın və yalnız vurğulamaq istədiyiniz mətnə ​​daxil olduğunuzu xatırlatmaq üçün bir əmr qutusu açılır, ekran görüntüsünə baxın:

doc xüsusi mətn 2 vurğulamaq

4. Və sonra basın OK düyməsini göstərdiyiniz bütün mətn yalnız hüceyrələr daxilində vurğulanmışdır, ekran görüntüsünə baxın:

doc xüsusi mətn 3 vurğulamaq


arrow mavi sağ bubble VBA kodu ilə digər mətnlərə əsasən bir hüceyrə daxilində xüsusi mətni seçin

Başqa bir vəziyyət, ilk sütunun mətn dizələrini içərdəki iki sütun var və ikinci sütun xüsusi mətndir, indi ikinci sütundakı xüsusi mətnə ​​əsasən birinci sütundakı nisbi mətni vurğulamaq lazımdır.

doc xüsusi mətn 4 vurğulamaq

1. Basıb saxlayın ALT + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

2. Basın Taxmaq > Modules, və aşağıdakı kodu yapışdırın Modules Pəncərə.

VBA kodu: Mətnin bir hissəsini digər mətnlər əsasında bir hüceyrədə vurğulamaq:

Sub highlight()
'Updateby Extendoffice 20160704
    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. Kodu yapışdırdıktan sonra basın F5 işə salmaq üçün açar sözü, hər ikisi mətn dizesini və vurğulamaq və istədiyiniz əsas mətni ehtiva olan məlumatların aralığını seçməyi xatırlatmaq üçün açılır, ekran görüntüsünə baxın:

doc xüsusi mətn 5 vurğulamaq

4. Və sonra basın OK düyməsinə, ikinci sütundakı xüsusi mətnə ​​əsaslanan birinci sütundakı bütün müvafiq mətn aşağıdakı ekran görüntüsü kimi qırmızı rəngdə işlənmişdir:

doc xüsusi mətn 6 vurğulamaq



Təklif olunan Məhsuldarlıq Vasitələri

Office Tab

qızıl star1 Chrome, Firefox və yeni Internet Explorer kimi Excel və digər Office proqramlarına lazımlı sekmeleri gətirin.

Excel üçün Kutools

qızıl star1 Amazing! 5 dəqiqədə məhsuldarlığınızı artırın. Heç bir xüsusi bacarıqa ehtiyac yoxdur, hər gün iki saat saxlaya bilərsiniz!

qızıl star1 300 Excel üçün yeni funksiyalar, Excel çox asan və güclü olun:

  • Veriyi ləğv etmədən Cell / Satır / Sütunları birləşdirin.
  • Bir neçə Çarşaf və İş Kitabını birləşdirin və birləşdirin.
  • Çaprazları müqayisə edin, birdən çox aralığa kopyalayın, mətni tarixə, vahidə və valyuta çevrilməsinə çevirin.
  • Rənglər, Paging Subtotals, Advanced Sort və Super Filter tərəfindən sayılan,
  • Daha çox seçin / Insert / Sil / Mətn / Biçim / Bağlantı / Yorum / Çalışma kitabları / Çalışma Qurğuları Tools ...

Excel üçün Kutools-un ekranı

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    lolster · 9 months ago
    hi, i noticed that this is case senitive highliter. Where can i change that it would highlite lower and upper casese in deired word
    • To post as a guest, your comment is unpublished.
      skyyang · 8 months ago
      Hello, lolster,

      In the above two codes, which code do you want to identify case sensitive?
      We will modify the code for you!
      • To post as a guest, your comment is unpublished.
        elaine · 6 months ago
        Hi, I would like to ask the same question to highlight both lower and upper case, in the case of below:

        "find and mark keyword1, keyword2 and keyword3 in all text strings also when one string contains more than one of these keywords (all of them should get highlighted in the specific text string)"
  • To post as a guest, your comment is unpublished.
    Eugene Cloud · 11 months ago
    Thank you for "Highlight A Specific Text Within Multiple Cells With VBA Code" It works great. Would you please explain:
    line 18 xTmp = xTmp & Split(Rng.Value, cFnd)(x)
    Why idoes the "(x)" have to appear where it is? Is the value of x passed to the Split function as a named argument without the name? I would really like to understand this concept.Thank you for your help and this function. I have learned something I didn't know.
  • To post as a guest, your comment is unpublished.
    L · 11 months ago
    how could i get this code to work but have it highlight in a color other than red?
    • To post as a guest, your comment is unpublished.
      skyyang · 11 months ago
      Hello,
      If you want to highlight the text with other color, you just need to change the color index number 3 to other color index number in the below script:
      .Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3

      Please try it. Thank you!
  • To post as a guest, your comment is unpublished.
    AMIT · 1 years ago
    Can anyone help me for a code to " copy those highlighted word in a different column ".
  • To post as a guest, your comment is unpublished.
    Alex · 1 years ago
    It worked great for me, thank you for sharing this with the world.