Страницы: 1
RSS
Закрасить фигуру по цвету условного форматирования
 
Здравствуйте. У меня проблема в закрашиванием фигур по условному форматированию. Сколько роликов не пересмотрел, ничего не получается. VBA не изучал к сожалению.  
 
Здравствуйте. Можно попробовать использовать макрос.
Для начала каждую фигуру назовите правильной "областью" (как в столбце слева).
А потом вставляйте макрос в модуль листа. Будет пересчитываться при всех изменения листа.

Код
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim rng As Range
    Dim colorVal As Long
    Dim Rcolor As Integer
    Dim Gcolor As Integer
    Dim Bcolor As Integer
       
    For Each rng In Range("B1:B14")
        colorVal = rng.DisplayFormat.Interior.Color
        Rcolor = colorVal Mod 256
        Gcolor = (colorVal \ 256) Mod 256
        Bcolor = colorVal \ 65536
        Shapes(rng.Offset(, -1)).Fill.ForeColor.RGB = RGB(Rcolor, Gcolor, Bcolor)
    Next

End Sub

Файл с встроенным кодом прилагаю (но там области рандомно названы, поправьте).

 
 Sceptic,  Спасибо за помощь и ответ. Хотелось бы еще уточнить момент, изменится ли код в случае если карта будет на другом листе?
 
Алдияр Аки, для другого листа надо будет скопировать этот код в модуль этого листа.
Ну и поправить диапазон ячеек, в которых установлено условное форматирование, если потребуется.
 
Sceptic, Спасибо огромное за помощь. Вы лучший.
Такой вопрос, можно ли настроить авто выполнение макроса при изменениях значений. То есть у меня к значения подкреплен Срез по годам и он меняет суммы. Что возможно в таком случае сделать?  
Страницы: 1
Наверх