Znajdź ostatnio używany wiersz w programie Excel z C # [duplikat]

Możliwy duplikat:
Jak uzyskać zasięg zajętych komórek w arkuszu Excela

Próbuję znaleźć ostatnio używany wiersz w arkuszu programu Excel. Aby to zrobić, używam tego kodu:

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

W większości przypadków działa dobrze, ale czasami program Excel myśli, że w arkuszu jest więcej wierszy, niż się wydaje.

Fx: Jeśli kopiuję dane z arkusza1, zawierające 12 wierszy, do pustego arkusza2, a następnie usuwam wszystkie dane w arkuszu2, klikając prawym przyciskiem myszy i naciskając „Usuń ...” i kopiując dane z arkusza3, zawierającego 5 wierszy, do arkusza2, a następnie lastUsedRow da mi wartość 12, która powinna być 5.

Wygląda na to, że Excel uważa, że ​​niektóre komórki są wypełnione, mimo że właśnie usunąłem wszystkie komórki, przed skopiowaniem nowych danych z mniejszą liczbą wierszy do arkusza.

Czy jest jakiś sposób na „zmianę rozmiaru” widoku danych w arkuszu, aby uzyskać odpowiednią liczbę użytych komórek, a może inny sposób znalezienia liczby ostatnio używanego wiersza?

Dzięki.