View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Rich Locus Rich Locus is offline
external usenet poster
 
Posts: 74
Default excel 2010 question regarding determining the last row

Hello:

If you want to find the last row, I would recommend using the process
described in John Walkenbach's book, Excel 2003 Power Programming with VBA...
it's the same for 2007.

He recommends this process to find the last active row number:

intNumberOfRowsInWorksheet = ActiveSheet.UsedRange.Rows.Count
intNumberOfRowsInWorksheet = intNumberOfRowsInWorksheet +
ActiveSheet.UsedRange.Row - 1

This combination of statements is necessary in case the data starts in other
than row 1. Try it for yourself.... it's the Industry Standard.

--
Rich Locus
Logicwurks, LLC


"Gary Keramidas" wrote:

never really used 2007, so i'm wondering if you've seen this behavior in
2010, or 2007, for that matter.

typically, in 2003, ws3.Cells(Rows.Count, "A").End(xlUp).Row, would return
the last row

but, in 2010, i frequently get debugs on this line when opening a 2003
workbook in compatibility mode.

so, i've resorted to change the code to this and it seems to resolve the
issue:
ws3.Cells(ws3.Rows.Count, "A").End(xlUp).Row

seems excel is sometimes thinking it has a million rows, when in fact there
are only 65000, so it debugs. seems to happen when i open another workbook
with code.

anyone seen this or have a better way?


--


Gary Keramidas
Excel 2003


.