Colour Scale Based on Values
Apply colour scales to visualise data patterns with conditional formatting
417 views
Perfect For:
- Data visualization
- Performance tracking
- Heat maps
VBA Code
Sub ApplyColourScale()
Dim dataRange As Range
Dim colourScale As ColorScale
' Select the data range
Set dataRange = Application.InputBox("Select range for colour scaling:", Type:=8)
If dataRange Is Nothing Then Exit Sub
' Clear existing conditional formatting
dataRange.FormatConditions.Delete
' Add 3-colour scale
Set colourScale = dataRange.FormatConditions.AddColorScale(ColorScaleType:=3)
' Configure colours: Red (low) -> Yellow (middle) -> Green (high)
With colourScale.ColorScaleCriteria(1)
.Type = xlConditionValueLowestValue
.FormatColor.Color = RGB(248, 105, 107) ' Red
End With
With colourScale.ColorScaleCriteria(2)
.Type = xlConditionValuePercentile
.Value = 50
.FormatColor.Color = RGB(255, 235, 132) ' Yellow
End With
With colourScale.ColorScaleCriteria(3)
.Type = xlConditionValueHighestValue
.FormatColor.Color = RGB(99, 190, 123) ' Green
End With
MsgBox "Colour scale applied successfully!"
End Sub
Related Topics
colour scale
visualization
gradients
performance
Need Custom VBA Solutions?
Our AI-powered VBA generator can create custom code tailored to your specific requirements in seconds.
3 free generations/month — unlimited with Pro
Related Templates
More VBA templates in the same category
Beginner
Highlight Duplicate Values
Automatically highlight duplicate values in a range with conditional formatting
View Template