I have this set of code which I can run from the first spreadsheet and it will create the new spreadsheet. What I do not know how to do is modify the code so I can run this from the second spreadsheet and append to the spreadsheet this macro created.
Dim startrow, endrow
Dim r1 As Range, r As Range
Dim bk As Workbook, sh As Worksheet
Dim v As Variant, i As Long, ar As Range
Dim fName As String, sh1 As Worksheet
Set rng = Range(Range("B8"), _
Cells(Rows.Count, 1).End(xlUp))
Set sh1 = ActiveSheet
startrow = InputBox("enter the start row number")
endrow = InputBox("enter the ending row number")
If Not IsNumeric(startrow) Then
MsgBox "Invalid data"
Exit Sub
End If
Set r1 = sh1.Range(sh1.Rows(startrow), sh1.Rows(endrow))
Set r = Intersect(r1.EntireRow, sh1.Range("B:B,D

,E:E,G:G,H:H,I:I,J:J,K:K,L:L"))
Set bk = Workbooks.Open("C:\temp\test_spreadsheet.xls")
Set sh = bk.Worksheets("sheet1")
v = Array(1, 7, 8, 9, 13, 12, 14, 15, 16)
i = LBound(v)
For Each ar In r.Areas
' add code to find the first blank cell and start the paste on that row:
ar.Copy
sh.Cells(4, v(i)).PasteSpecial xlValues
sh.Cells(4, v(i)).PasteSpecial xlFormats
i = i + 1
Next ar
fName = Application.GetSaveAsFilename()
bk.SaveAs fName
bk.Close SaveChanges:=False
End Sub