Try this
Dim RowNdx As Long
Dim ColNum As Long
Dim cell As Range
ColNum = Selection(1).Column
Columns("A:A").Select
Application.ScreenUpdating = False
For RowNdx = Selection(Selection.Cells.Count).Row To _
Selection(1).Row + 1 Step -1
If Cells(RowNdx, ColNum).Value <> Cells(RowNdx - 1, ColNum).Value
Then
With Cells(RowNdx - 1, 1).EntireRow
With .Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
End With
End If
Next RowNdx
--
HTH
Bob Phillips
(replace somewhere in email address with gmail if mailing direct)
"Koveras" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> I found this piece of code while searching for a way to underline
> anytime there is a date change in column A, but it doesnt always
> underline correctly and if ran twice it incorrectly underlines rows.
> Where is the bug? I can't find it. Any help is appreciated. thanks!
>
> Dim RowNdx As Long
> Dim ColNum As Integer
>
> ColNum = Selection(1).Column
> Columns("A:A").Select
> Application.ScreenUpdating = False
>
> For RowNdx = Selection(Selection.Cells.Count).Row To _
> Selection(1).Row + 1 Step -1
> If Cells(RowNdx, ColNum).Value <> Cells(RowNdx - 1, ColNum).Value
> Then
> Cells(RowNdx - 1, 1).EntireRow.Select
> With Selection.Borders(xlEdgeBottom)
> .LineStyle = xlContinuous
> .Weight = xlMedium
> .ColorIndex = xlAutomatic
> End With
> End If
> Next RowNdx
>
|