Two variables for Target.Value

  • Thread starter Very Basic User
  • Start date
V

Very Basic User

Below is my code that works for any items identified as "In Progress" what if
I want to follow the same process for both "In Progress" and "Not Started"?
how would I udate the code to include both.

Thanks!

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Dest As Range
If Target.Count > 1 Then Exit Sub
If IsEmpty(Target.Value) Then Exit Sub
If Target.Column = 7 And _
Target.Row > 4 And _
Target.Value <> "In Progress" Then
With Sheets("Complete")
Set Dest = .Range("A" & Rows.Count).End(xlUp).Offset(1)
End With
Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Copy Dest
Target.EntireRow.Delete
End If
End Sub
 
S

Stefi

Replace the If condition:

If Target.Column = 7 And _
Target.Row > 4 And _
(Target.Value <> "In Progress" Or Target.Value <> "Not Started") Then


--
Regards!
Stefi



„Very Basic User†ezt írta:
 
J

Jim Thomlinson

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Dest As Range

with Target
If .Count > 1 Then Exit Sub
If IsEmpty(.Value) Then Exit Sub
If .Column = 7 And _
.Row > 4 And _
.Value <> "In Progress" And _
.Value <> "Not Started" Then
With Sheets("Complete")
Set Dest = .Range("A" & Rows.Count).End(xlUp).Offset(1)
End With
Range(Cells(.Row, 1), Cells(.Row, 10)).Copy Dest
.EntireRow.Delete
End If
End With
End Sub

Note This I used a with statement for Target. It makes the code a bit more
compact and also a shade faster.
 
V

Very Basic User

Thank you, I used the above solution, but this would have worked too. Thank
you very mucy!
 
S

Stefi

You are welcome! Thanks for the feedback!
--
Regards!
Stefi



„Very Basic User†ezt írta:
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top