Выделение символов в ячейке - VBA

Узнай цену своей работы

Формулировка задачи:

Здравствуйте уважаемые гуру Excel'я. В на просторах нашего "бескрайнего" нашел такой макросик для Excel'я на VBA:
Он подсвечивает текст в английской раскладке красным цветом (очень удобно когда не знаешь в какой раскладке стоят буквы К О А Р.. и т.д.)...но речь не об этом =) Есть необходимость в похожей функции, но только с другими условиями: необходимо подсвечивать и/или менять регистр части текста, точнее конкретных символов в ячейке, по заданному "образцу", по типу импровизированного поиска, например: Ячейка1______Ячейка2___Ячейка3___Ячейка4 абвгд________аб________0_________абвгд абвгд________гд________1_________абвГД Яч1 - исходный текст Яч2 - образец для выделения Яч3 - да\нет смена регистра Яч4 - результат В общем как то так... Буду рад за любую оказанную помощь

Решение задачи: «Выделение символов в ячейке»

textual
Листинг программы
Sub www()
    Dim i&, j&, txt$, mask$
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        txt = Cells(i, 1).Text
        mask = Cells(i, 2).Text
        If Cells(i, 3).Value <> 0 Then txt = Replace(txt, mask, UCase$(mask))
        With Cells(i, 4)
            .Value = txt
            .Font.ColorIndex = xlAutomatic
            If Len(mask) > 0 Then
                j = 0
                Do
                    j = InStr(j + 1, LCase$(txt), LCase$(mask))
                    If j Then .Characters(Start:=j, Length:=Len(mask)).Font.ColorIndex = 3
                Loop While j
            End If
        End With
    Next i
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.923 из 5
Похожие ответы