to copy the last row and maintain your formulas it is best to copy the last
row and insert the copy before the last row. Thne clear the non-formula
cells from the last row. A little backwards, but it will work.
Lastrow = range("A" & rows.Count).end(xlup).Row
Rows(Lastrow).copy
Rows(Lastrow).Insert
Rows(Lastrow + 1).SpecialCells(xlCellTypeConstants).ClearContents