Try recording a macro that creates a table. Then go back and change the range.
It usually will be in a R1C1 format.
You can create a variable that stores the last row like
Dim Lrow as integer, MyRange as string
Lrow = sheets(1).range("A65000")end(xlup).row
MyRange = "A5:H" & Lrow
then substitute the R1C1 in the code with range(MyRange)