I've been using the usual function to find the last row containing data... ActiveSheet.Cells(ActiveSheet.Rows().count, nColumn).End(xlUp).row() or slight variations of. I noticed that this actually will not return the correct value if you have data in the last row 1,048,576 of an Excel sheet. It starts there and goes up until it encounters data, but if there is actual data from where it starts, it does return that row. It returns the next row that has data. Obviously this would probably never be a problem as you would probably never need over 1 million rows, but nevertheless, it's behavior isn't quite as I expected.