Encuentre la última fila usada en Excel con C # [duplicado]

Posible duplicado:
Cómo obtener el rango de celdas ocupadas en hoja de excel

Estoy tratando de encontrar la última fila utilizada en una hoja de cálculo de Excel. Para hacer esto, estoy usando este código:

int lastUsedRow = currentWS.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell,Type.Missing).Row;

La mayoría de las veces funciona bien, pero a veces Excel piensa que hay más filas en la hoja de lo que se supone que hay.

Fx: Si copio datos de la hoja 1, que contienen 12 filas, a una hoja vacía2, luego borro todos los datos de la hoja2, haciendo clic derecho y presionando "Eliminar ..." y copio los datos de la hoja3, que contienen 5 filas, a la hoja2, luego lastUsedRow me dará el valor de 12 que debería haber sido 5.

 Se supone que el ejemplo de la imagen anterior da a mi el valor de 22 como conteo de filas, pero en su lugar obtendré 634. Observe la barra de desplazamiento a la derecha.

Parece que Excel piensa que algunas celdas están llenas aunque acabo de eliminar todas las celdas, antes de copiar nuevos datos con menos filas en la hoja.

¿Hay alguna manera de "cambiar el tamaño" de la vista de los datos en la hoja, de modo que obtenga el número correcto de celdas usadas o tal vez otra forma de encontrar el número de la última fila utilizada?

Gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta