I have some data that looks like this:

[![enter image description here](https://i.stack.imgur.com/vscq5.jpg)](https://i.stack.imgur.com/vscq5.jpg) 

For all rows labeled "Coupon" I want to add a number to the entries in that row if they are non-blank. If they are blank, I want to leave them alone. Also if the data in a cell happen to be a date, I want to not touch it.

Row by row I want to run through the entire range.

My current code is giving me a "for each may only iterate over a collection object or an array vba" error. Please help!

```
Sub CommandButton1_Click()

Dim rng As Range
Dim rw As Range
Dim cel As Range

Set rng = Range("E15:P464")

For Each rw In rng.Row
    If rw.Item(1, 1) = "coupon" Then
      For Each cel In rw.Cells
            If IsEmpty(cel.Value) = False Then
                   If Not IsDate(cel) Then
                       cel.Value = cel.Value + 0.0001
                   End If
            End If
      Next cel
    End If
Next rw

End Sub

```