Уважаемые форумчане, добрый день! Помогите, пжл, справиться со следующей задачей. Формируем некий динамический отчет, в котором показатели будут регулярно/ежедневно изменяться. В зависимости от установки в ячейке значения и его увеличения (1 (желтый), 2 (оранжевый) 3 (ближе к красному) итд., цвет ячейки должен автоматически изменяться в соответствующем диапазоне к более яркому красному). Столбцы F,G,H (от желтого по палитре к красному - как нарастающее количество нарушений). Столбец E (от зеленого к более яркому зеленому от 1 до 5). Файл отчета прилагается. Заранее благодарен за помощь!
Макрос тут не нужен -уловное форматирование в помощь. - выделяете ячейки, где должно действовать данное правило. Мин значение - желтый цвет, макс -красный, аналогично с зеленым.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
'В модуль листа.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
On Error Resume Next
Set r = Intersect(Target, ActiveSheet.UsedRange)
On Error GoTo 0
If Not r Is Nothing Then
myColorRange r
End If
End Sub
Sub myColorRange(r As Range)
Dim c As Range
Dim v As Variant
Dim i As Long
For Each c In r
v = c.Value
If IsNumeric(v) Then
Select Case c.Column
Case 5
i = RGB(255 - 255 / 5 * v, 255, 255 - 255 / 5 * v)
Case 6, 7, 8
i = RGB(255, 255 - 255 / 5 * v, 255 - 255 / 5 * v)
Case Else
i = 0
End Select
If i > 0 Then
c.Interior.Color = i
Else
c.Interior.Pattern = xlNone
End If
End If
Next
End Sub