Hi Don't Know,
Ok, I amended the code according to your requirements.
The code will loop through column A rows 8-64 of sheet Order Form.
Whenever the value is bigger then 0 the entire row is being copied.
The code will then look for a free row on sheet Printable From.
The free row will be based on the value in column A; If the cell is empty and between 15-43, then the copied row will be pasted as values.
If there is no free row then a message box will appear, letting you know that the code will be aborted.
Here is the code:
Dim x As Integer
For Each cell In Range("A8:A64")
If cell.Value > 0 Then
For x = 15 To 44 Step 1
If Sheets("Printable Form").Range("A" & x) = vbNullString Then
Sheets("Printable Form").Range("A" & x).PasteSpecial (xlValues)
If x = 44 Then
MsgBox "Rows 15-43 are already filled with data. Macro will abort."
Application.CutCopyMode = False
Give it a try and see if we solved your query.