Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column <> 8 Then Exit Sub
Dim hRng As Range
Set hRng = Target.Offset(, -7).Resize(1, 8)
With hRng
.Copy Range("J" & Rows.Count).End(xlUp)(2)
End With
With hRng.Font
.Strikethrough = True
End With
End Sub
Data is present in columns A:H. When data is entered into column H, I want the text to be struck through and then cells $A$x:$H$x moved to the first available blank row.
Some more clarification...
Say you enter data in cell H6.
The code strikes through cells A6:H6?
And now does the code take the struck through data in A6:H6 and COPY it to the first blank row? Or is it "moved" to that blank row leaving a blank row 6?
Where exactly is the "first blank row"... is it directly below the existing data, say for instance the A:H data goes down to row 35. Is row 36 the first blank row?
Or are there other blank rows within the A:H data that may be blank, (Like row 6, if it is to be 'moved").
Howard
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column <> 8 Then Exit Sub
Dim hRng As Range
Set hRng = Target.Offset(, -7).Resize(1, 8)
With hRng.Font
.Strikethrough = True
End With
With hRng
.Cut Range("A" & Rows.Count).End(xlUp)(2)
End With
End Sub