VBA 途中に空白のあるデータの最終行を知りたい
↓ここで、連続したデータがある時のデータがある最終行が何行目か、知ることができます。
でも、途中で空白があると、ダメなんです。
そういう時は!
↓ここで使った usedrangeっていうのを使います。
Sub kazoeyo()
With ActiveSheet.UsedRange
lastRow = .Rows(.Rows.Count).Row
lastCol = .Columns(.Columns.Count).Column
End With
Debug.Print lastRow
Debug.Print lastCol
End Sub
ついでに、最終列までカウントしました。結果は、イミディエイトウィンドウに表示されています。
やっぱり、今は空白なのに、なんかしらデータが入っていたり書式が設定されていたセルまでは数えてしまいますが、ぜひエクセルを立ち上げなおしてやってみてください。
VBA 使用したセル範囲を選択する
エクセルシート上で一度でも使用したセルを含む範囲を選択したーーい って言う時には
Sub shiyoucell()
Activesheet.UsedRange.select
End sub
↓こんな感じ。
見る限りまさに使用しているセルのみを選択しています。。けど。
でも、セルK8が空白でも書式が設定されていると、、、
↓こうなります。
ここで、使用していたけどセルのデータを削除して書式設定もなしにした場合は、というと。。
この時、ファイルを保存してエクセルを立ち上げなおし、マクロを動かすと
↓こうなります。 エクセルを再起動することで使用済みセルの認識が変わるようです^^
ちなみに、矩形( くけい )にしか選択されません。 矩形っていうのは、四角くってことですね。
VBA データがある最終行が何行目か知りたい
データがある最終行が何行目か知りたい時。
Sub rowcount()
Msgbox "最終行は : ” & Range("A1").End(xlDown).row
End sub
最終行を変数に代入して、後でなんかしら処理に使いたい時。
Sub rowcount()
rowNumber = Range("A1").End(xlDown).row
End sub
(rowNumber は任意の変数で、お好きに名前がつけられます)
変数(↑では、rowNumber)にどんな値が入ったのか確認したい時。
Msgboxで表示させるのもOKですが、ここはひとつDebug.printで表示させてみよう!
Sub rowcount()
rowNumber = Range("A1").End(xlDown).row
Debug.print rowNumber
End sub
rowNumberの値がイメディエィトウィンドウに表示されます。
イメディエィトウィンドウを表示するには、メニューの「表示」-「イメディエィトウィンドウ」を選択してね。
ちなみに、↑の場合だと、セルA1から最終行まで連続してデータ入っているのが前提です。
途中でブランクがあると、ブランクのセルの一つ前が最終行とみなされちゃうんですねぇ。
エクセルのシート上で、キーボードの[End] + カーソル下 で最終行まで移動するという操作をマクロでやっておりまする。
そしたら、ブランクばっかりのシートで最終行をどうやって調べたらいいのか?・・・次回に続く
