Borders question, please

S

Stuart

If I run the following code (which colours unlocked cells) and
many contiguous cells become coloured, then it becomes a little
difficult to orientate within the sheet:

For Each c In .UsedRange.Columns("A:G")
For Each cell In c.Cells
With cell
If Not cell.Locked = True Then
'User is permitted to edit this cell, so color it:
With cell
.Interior.ColorIndex = 34
End With
End If
End With
Next cell
Next c

What are the correct statements please, that will format just the
top and bottom borders of each coloured cell to the default
(feint) Xl style?

Regards.
 
T

Trevor Shuttleworth

Stuart

you could try a variation on this sample:

With Range("E8:I16")
With .Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
With .Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With .Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With

Regards

Trevor
 
S

Stuart

Many thanks.

Regards.

Trevor Shuttleworth said:
Stuart

you could try a variation on this sample:

With Range("E8:I16")
With .Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
With .Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With .Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With

Regards

Trevor
 
Top