# Colour Entire Table Row Based on Values in Two Cells

#### daithiboy

##### Board Regular
Hi Folks,

I haven't had a chance to use VBA in quite awhile and so I've fallen out of practice.

I have a worksheet with 17,000 rows (growing by approx 1000 a month) and conditional formatting set to change the fill colour of some rows (entire table row) based on the values in column 12 and 13. This is proving very slow and every time I add more data it recalculates.

Seeing as my data won't be changed, I would like to get VBA to run through each row and permanently colour each table row based on what's in columns 12 and 13 i.e. if row x column 12 ="True" AND row x column 13 = "False" THEN colour entire row yellow (entire row = row x column 1 to row x column 13).

I hope that makes sense and if you have any suggestions they would be very much appreciated.

Many thanks,
Dave

### Excel Facts

Why does 9 mean SUM in SUBTOTAL?
It is because Sum is the 9th alphabetically in Average, Count, CountA, Max, Min, Product, StDev.S, StDev.P, Sum, VAR.S, VAR.P.

#### daithiboy

##### Board Regular
If got this far,

Code:
``````Sub colour_rows()

Dim wsAtt As Worksheet
Dim lrow As Long
Dim i As Long

Set wsAtt = ThisWorkbook.Worksheets("All Attendances")
lrow = wsAtt.Cells(Rows.Count, 1).End(xlUp).Row

With wsAtt

For i = 2 To lrow

If Cells(i, 12) = True And Cells(i, 13) = False Then

MsgBox "Urgent"

ElseIf Cells(i, 12) = True And Cells(i, 13) = True Then

MsgBox "Urgent DNA"

End If

Next i

End With

End Sub``````

I just need to replace the message boxes with instructions to change the row colour.

Thanks a mil,
Dave