You can determine the next free row by

Sheets("Sheet1").Range("A65536").End(xlUp).Row + 1
Assuming you wanted Col A in this case. Then you can put data in, or pull it out of Range("A" & LastRow). Then just have the code put the data in the columns and sheets you want.

Can you post an example of what you are doing?