Hi & welcome to the board.
That's perfectly possible.
A few questions
1) what column on sheet Details contains Completed.
2) How will that column be changed? Manually entered, data validation, Formula, or something else
3) Do you want to copy the entire row to the Savings sheet?
4) Once copied do you want that row removed from Details?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NxtRw As Long
If Target.CountLarge > 1 Then Exit Sub
If Not Target.column = 8 Then Exit Sub
If LCase(Target.Value) = "complete" Then
With Sheets("Savings")
NxtRw = .Range("A" & Rows.Count).End(xlUp).Offset(1).row
.Range("A" & NxtRw).Resize(, 2).Value = Range("B" & Target.row).Resize(, 2).Value
.Range("C" & NxtRw).Value = Range("G" & Target.row).Value
.Range("D" & NxtRw).Value = Range("W" & Target.row).Value
.Range("E" & NxtRw).Value = Range("Z" & Target.row).Value
End With
End If
End Sub
Hi it doesnt run when i hit the run button i get a box telling me to create a new macroOk try thisThis needs to go in the sheet module.Code:Private Sub Worksheet_Change(ByVal Target As Range) Dim NxtRw As Long If Target.CountLarge > 1 Then Exit Sub If Not Target.column = 8 Then Exit Sub If LCase(Target.Value) = "complete" Then With Sheets("Savings") NxtRw = .Range("A" & Rows.Count).End(xlUp).Offset(1).row .Range("A" & NxtRw).Resize(, 2).Value = Range("B" & Target.row).Resize(, 2).Value .Range("C" & NxtRw).Value = Range("G" & Target.row).Value .Range("D" & NxtRw).Value = Range("W" & Target.row).Value .Range("E" & NxtRw).Value = Range("Z" & Target.row).Value End With End If End Sub
Right click the Details sheet tab > select view Code > paste the code above into the window that appears.
Make sure that the workbook is macro enabled(ie xlsm, or xlsb)
Whenever you type "complete" into col H, the relevant data will get copied.