Joseph,
Thanks for the STAR - it's appreciated.
As for: Lastcell = [A65536].End(xlUp).Row
This line caused Excel to do an "end-up" from the last row in column A, and assign the Row number to the variable Lastcell.
The term "end-up" means that Excel will go up until it reaches a cell that contains data. This action is the very same as if you manually hit the <End> key, followed by the <Up Arrow> key - except of coure that in this case the line asks for the Row number.
As you might already know, if an <End> <Up Arrow> is used when the cursor is on a range-of-cells, it will go up until it reaches the last cell of that range-of-cells.
This of course also works for the other directions. Here's another variation...
Sub Go_Down()
Range("A1"

.End(xlDown).Select
End Sub
The following example is another variation that will demonstrate how you can assign a "range name" to a block of cells.
Assigning range names can be EXTREMELY useful. For example, in writing VBA code, one should whenever possible use range names instead of "hard code" such as A4:K157. This is because "internally" Excel maintains the connection between the names and the cell coordinates. Therefore, whenever adjustments are required, such as inserting/deleting rows, or moving data from place to place, one does NOT have to adjust the VBA code.
For example, if your application has formulas that reference cells via use of range names, any code that is activated to re-adjust the coordinates of any range name(s), will cause the formulas to automatically reflect the change(s).
A common example is a "data list" - or "database" - where each day the list increases in size.
By using range names, you can more easily identify blocks of data for various reasons such as copying or formatting the range of data, or selectively extracting records to a separate sheet for generating regular reports.
The following example re-sets the range name "data" on a sheet named "Database"...
Sub Set_data()
Worksheets("Database"

.Select
Application.Goto Reference:="R4C1"
Firstcell = ActiveCell.Address
Lastcell = [A65536].End(xlUp).Offset(0, 8).Address
datalist = Firstcell & ":" & Lastcell
Range(datalist).Name = "data"
End Sub
Note: The "Offset" above is used to assign the Address for "Lastcell" to the 8th column to the right of Column A, which is column I. You would of course adjust this number to match with the number of columns in your database.
While you might be familiar with assigning range names, I feel I should list the steps, for the benefit of others who might read this and are not familiar. While there are different ways to assign a range name, the method I always recommend is the following:
a) Highlight the cell or range-of-cells
b) Hold down the <Control> key and hit <F3>
c) Type the name
d) Hit <Enter>
I hope this helps.
Regards, ...Dale Watson dwatson@bsi.gov.mb.ca