Форум по VBA и MS Office

VBA, Excel => VBA, макросы в Excel => Тема начата: Посетитель от 04 февраля 2021, 14:54

Название: Excel VBA Макросы. Как заменить значение в ячейке выделенное условным форматированием?
Отправлено: Посетитель от 04 февраля 2021, 14:54
Как заменить значение в ячейке, выделенное условным форматированием желтым цветом.
Например в диапазоне C5:PE40 есть желтые ячейки с цифрой 8, нужно в них заменить 8 на о.
Название: Re: Excel VBA Макросы. Как заменить значение в ячейке выделенное условным форматированием?
Отправлено: Администратор от 04 февраля 2021, 15:08
Макрос вставляет букву "о". Если вы предполагали подставлять ноль, то нужно так записать:
Ячейка.Value = 0

Макрос
Sub Макрос()

    Dim Ячейка As Range
   
    ' Отключение монитора, чтобы ускорить макрос.
        ' Если много формул, можно ещё отключить формулы.
    Application.ScreenUpdating = False
   
    ' Замена значений в ячейках, закрашенных условным форматированием.
    For Each Ячейка In Range("C5:PE40")
        If Ячейка.DisplayFormat.Interior.Color = 65535 Then
            If Ячейка.Value = 8 Then
                Ячейка.Value = "о"
            End If
        End If
    Next Ячейка
   
    ' Сообщение.
    Application.ScreenUpdating = True
    MsgBox "Готово.", vbInformation

End Sub
[свернуть]