Hi, I am new to macros and VBA on Excel.

I need to figure out a way to search for a string in column D and then paste the entire row that string is in to a new sheet. I'd like for this to continue until I paste all of the rows of that string into the next sheet. This is what I got so far, and when I run it, it says an error occurs and then it says either press enter or paste. After I hit enter, it pastes the first row to the next sheet, but that's it. Also should I be doing this with a button?

Thanks,

Code:
Sub SearchForString()

Dim LSearchRow As Integer
Dim LCopyToRow As Integer

On Error GoTo Err_Execute

'Start search in row 2
LSearchRow = 2

'Start copying data to row 2 in Sheet2 (row counter variable)
LCopyToRow = 2

While Len(Range("A" & CStr(LSearchRow)).Value) > 0

'If value in column D = "HS06", copy entire row to Sheet2
If Range("D" & CStr(LSearchRow)).Value = "HS06" Then

'Select row in Sheet1 to copy
Rows(CStr(LSearchRow) & ":" & CStr(LSearchRow)).Select
Selection.Copy

'Paste row into Sheet2 in next row
Sheets("Sheet2").Select
Rows(CStr(LCopyToRow) & ":" & CStr(LCopyToRow)).Select
ActiveSheet.Paste

'Move counter to next row
LCopyToRow = LCopyToRow + 1

'Go back to Sheet1 to continue searching
Sheets("evs2013_PRDF.csv").Select

End If

LSearchRow = LSearchRow + 1

Wend

'Position on cell A3
Application.CutCopyMode = False
Range("A3").Select

MsgBox "All matching data has been copied."

Exit Sub

Err_Execute:
MsgBox "An error occurred."

End Sub