宮崎県延岡市 | スマイルカラーソフトウェア | ユーザースタイルに合わせたプログラミングでお客様に幸せをお届けします。

最終行番号を取得

シート上の最終行番号を取得するには SpecialCells メソッドで実現できます。

ActiveSheet.Cells.SpecialCells(xlLastCell).Row

上記のようなシートの場合、SpecialCells メソッドでは 11 を取得できます。
SpecialCells(xlLastCell) メソッドは「シートで使われたセル範囲の最後のセル」なので、範囲の行番号は 11行目となります。
ところが、場合によっては E列の 9 を取得したい場合があります。
これに対応するには、End(xlUp).Row プロパティを使用するとよいでしょう。 これは「セルの最後から上方向に見て、データのあるセルの行番号」ということになります。

ActiveSheet.Cells(ActiveSheet.Rows.Count, 5).End(xlUp).Row

また、場合によっては D列の空白セル D6 を取得したい場合があります。
これに対応するには、End(xlDown).Row プロパティを使用するとよいでしょう。これは「セルの最初から下方向に見て、データのある最後セルの行番号」ということになります。
なので D6 の空白セルは

ActiveSheet.Cells(1, 4).End(xlDown).Row + 1

となります。以下のように別の表現方法もあります。

ActiveSheet.Columns("D:D").End(xlDown).Row + 1
ActiveSheet.Range("D1").End(xlDown).Row + 1

目的に応じて使い分けてください。