Окрас фигур по значению в ячейке - VBA
Формулировка задачи:
Добрый день, подскажите пожалуйста как окрасить фигуры в экселе по значению в ячейке, т.е. в примере на листе1 есть 4 фигуры созданные в экселе, надо чтоб каждая фигура окрашивалась по значению в ячейке на листе2 (Название столбца "окрас по значению в ячейке") согласно легенде, файл прилогаю
| Наименование фигуры | окрас по значению в ячейке | легенда | ||
| Полилиния 2 | 1 | 1 = желтое | ||
| Полилиния 5 | 2 | 2 = красное | ||
| Полилиния 6 | 1 | 3 = розовое | ||
| Полилиния 7 | 3 | 4 = белое |
Решение задачи: «Окрас фигур по значению в ячейке»
textual
Листинг программы
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
On Error Resume Next
For Each c In Intersect(Target, Range("C7:C10"))
Select Case c.Value
Case 1 To 5
Sheets("Лист2").Shapes(c.Offset(, -1).Value).Fill.ForeColor.RGB = Range("j1").Offset(c.Value).Interior.Color
Case 10
Sheets("Лист2").Shapes(c.Offset(, -1).Value).Fill.ForeColor.RGB = Range("j7").Interior.Color
End Select
Next
End Sub