No sé si te refieres a poner el rango de celdas en una matriz. Leer la matriz y cuando cambie el número entonces pintar las celdas.
Puedes poner el rango en una matriz, pero definitivamente cuando se pinten las celdas deberá hacerse en las celdas.
Sub PintarCeldas_2()
Dim a As Variant
Dim i As Long, ini As Long, fin As Long
Dim ant As Variant
'
ini = 7
a = Range("H7", Range("H" & Rows.Count).End(3)(2)).Value
ant = a(1, 1)
For i = 1 To UBound(a)
If a(i, 1) <> ant Then
Range("H" & ini & ":H" & fin).Interior.Color = RGB(Int((200 * Rnd) + 1), Int((200 * Rnd) + 1), Int((200 * Rnd) + 1))
ini = i + 6
End If
fin = i + 6
ant = a(i, 1)
Next i
End Sub