最終セルの番地を調べる

知っていてもすんなりcodeは出てきませんので、便利帳代わりに書いておきます。




① データの最終行を知りたい


データ入力をどこから始めるかを決める為に、現在のデータの最終セルをgetしたいですね。


Option Explicit

Private Sub CommandButton1_Click()

 ActiveCell.Select
 Selection.End(xlDown).Select

 MsgBox Selection.Address

End Sub


データ行の最初のセルを指定すると最終番地が表示されます。

このやり方は上から順にセルが空白かどうかを調べてますので、途中に空白があるとその前のセル最終セルとされてしまいます。 

途中に空白が無い時か、その空白行を削除してから使う必要があります。

 


—————————–

 


② 途中空白あってもOKなcode




Option Explicit

Private Sub CommandButton1_Click()

 Cells(1048576, 3).Select
 Selection.End(xlUp).Select

 MsgBox Selection.Address

End



途中に空白があるとNGなら、下からチェックしてみたらどうだろう? と言うアイディアに基づいております。

・ 一番最後のセルからデータがあるかどうか調べる–> Cells(1048576, 3).Select

  W10は1048576行が最後の行です。

・Selection.End(xlUp).Select—>最後のセル(C1048576)から上に順にデータがあるかどうか調べる

・見つけたセルがデータが入っている最終セルと分かります。

 

 —————————-

 

③ 次は全体のデータ領域を求める

とびとびにデータが入っていると次の処理に困るので、どこまで使用されているか調べます。



Option Explicit

Private Sub CommandButton1_Click()
‘ワークシートの最終セル位置を求める

 ActiveSheet.UsedRange.Select
 MsgBox Selection.Address

End Sub


・一行目: 使用している領域を選べる–>図のⒶ

・二行目: その領域を表示する–>図のⒷ、Ⓒ

とこれ以上ない位簡単なcodeですね。


 
 

以上

 
VBA別館
メッセージボックスの使い方

VBAでプログラムを書いた後、プログラムを動かすとエラー続出なんてことは日常茶飯事です、僕は。そこで …

VBA別館
有名俳句集 ver1.1

一茶や芭蕉などの有名俳句をまずは200句学んでみましょう。スタートすると俳句が出てきて2秒後にその俳 …

VBA別館
どのサイズまで印刷できるかな?

少し見栄えの良い写真を、大きくプリントすることになりました。前回その辺のところは書きました。 今回は …