Hi, joh46k,
taking JapanDave´s concept of worksheet change please try this code and see if you may work with it (it will have an effect in the row you change/enter data). Code goes behind the sheet wwhich you want to monitor:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
Dim blnDo As Boolean
If Target.Count > 1 Then Exit Sub
Application.ScreenUpdating = False
On Error GoTo extsub
If Not Intersect(Target, Range("B:M")) Is Nothing Then
With Range("B" & Target.Row & ":M" & Target.Row)
.Borders.LineStyle = 0
For i = 7 To 11
Select Case i
Case 7, 10, 11
blnDo = True
Case 8, 9
If Cells(Target.Row, "M") = Cells(Target.Row - 1, "M") Then
Range("B" & Target.Row - 1 & ":M" & Target.Row - 1).Borders(i).LineStyle = 0
blnDo = False
Else
blnDo = True
End If
End Select
If blnDo Then .Borders(i).LineStyle = 1
Next i
End With
End If
extsub:
Application.ScreenUpdating = True
End Sub
For updating with a Button I would check the date in Column M to build a range for applying borders there.
HTH,
Holger
Bookmarks