Try this:
Sub CopyData()
' Template path and filename
Const strTemplate = "C:\Templates\MyTemplate.xlt"
' Path for workbooks, including trailing backslash
Const strPath = "C:\Excel"
Dim wbkSrc As Workbook
Dim wshSrc As Worksheet
Dim wbkTrg As Workbook
Dim wshTrg As Worksheet
Dim lngRow As Long
Dim lngStartRow As Long
Dim lngLastRow As Long
Dim strFilename As String
Application.ScreenUpdating = False
Set wbkSrc = ActiveWorkbook
Set wshSrc = wbkSrc.Worksheets("1-4 pcs") ' or ActiveSheet
wshSrc.UsedRange.Sort Key1:=wshSrc.Range("A1"), Header:=xlYes
lngLastRow = wshSrc.Range("A" & wshSrc.Rows.Count).End(xlUp).Row
lngRow = 2
Do
If wshSrc.Range("A" & lngRow).Value <> wshSrc.Range("A" & lngRow - 1).Value Then
If lngStartRow > 0 Then
Set wbkTrg = Workbooks.Add(Template:=strTemplate)
Set wshTrg = wbkTrg.Worksheets(1)
wshTrg.Range("B1").Value = wshSrc.Range("A" & lngStartRow).Value
wshSrc.Range("B" & lngStartRow & ":D" & lngRow - 1).Copy _
Destination:=wshTrg.Range("A6")
strFilename = wshSrc.Range("A" & lngStartRow).Value & "_1309.xls"
wbkTrg.SaveAs Filename:=strPath & strFilename, FileFormat:=xlExcel8
wbkTrg.Close
End If
If lngRow > lngLastRow Then
Exit Do
Else
lngStartRow = lngRow
End If
End If
lngRow = lngRow + 1
Loop
Application.ScreenUpdating = True
End Sub