2019年10月12日

最終行を取得する / Excel / VBA

「7.4〜6を繰り返し最後の行まで行ったら終了します。」
さて、データの1行目から最終の行まで繰り返し処理をさせようとした時、最終の行っていくつだ!?
ってことで、最終行の行番号を求めるマクロを試作してみましょう。

Excelで最終行に移動するのはどうやってますか?
ボクは主に「ctrl」+「↓」でやってるんですが、たまに途中に空白行があるとその手前でストップしてしまい、イラッとする時があります。
20191012-03.JPG

なので、別の方法でやってみます。まずデータの範囲を下方向に外れたセルを選択します。
20191012-04.JPG

そこで「end」キーを押してENDモードにしてから「↑」キーを押すと下からデータ範囲の一番下のセルでストップします。データ範囲の上から下に行くのではなくてデータ範囲外の下か上にデータが入力されているセルを捜します。
20191012-05.JPG


最終行を選択
まずデータの範囲外の下の方の行き方ですが、Excelが用意しているワークシートの最終行まで一気にジャンプします。

Cells(Rows.Count, 1)

Excelのバージョンに関わらず最終行が Rows.Count となります

ENDモードで上方向にジャンプ
End(xlUp)

ジャンプ先の行番号は
End(xlUp).Row となります。


それでは、データ範囲の最終行を取得するマクロです

Sub macro1()

'nを変数
Dim n

'列Aの最終行からENDモードで上方向にジャンプして
'データのあるセルの行番号をnに保管

n = Cells(Rows.Count, 1).End(xlUp).Row

'セルC1に変数nの値を表示
Cells(1, 3) = n


End Sub


こんなんです。
20191012-01.JPG

で、実行結果がこれ
20191012-02.JPG

サンプルExcelファイル)20191012_最終行数を取得する.zip






前のページ:繰り返し処理の試作(For〜Next)
次のページ:メッセージを表示する

関連ページ
Excel VBA メニュー
VBAを使えるようにしてみました!
実例1 一覧表から帳票を自動で印刷させる


なんか、最近は関東地方を直撃する台風が来るな〜 (*_*)
日本の昔からの課題は「治水」、毎年のようにどこかで水害が起きているけど、なかなか水を治めることが出来てません。
ってことは、住む場所はハザードマップを確認して水害が起きないような場所を選ぶのがベストだと思う。
あとは、家そのものが雨風や地震、水害になんかに強い構造になっているかですよねー。
屋根の構造とか、雨戸やシャッターが付いてるかとか、耐震性能がどうかとか。。。
「そこまで考えてられない」って言うのもあるかもしれないけど、ホント最近は想定外の自然災害が多いので、住居の安全性は家賃や駅からの距離以上に最優先で考えるべき条件なんだと思う。

停電になった時に、こんなんで発電したらちっとは足しになんのかなー。。。







posted by haku1569 at 22:18| Excel VBA | このブログの読者になる | 更新情報をチェックする
' + adSrc + '<' + '/body>'); d.close(); } loadAd(); window.setTimeout(loadAd, reloadSec * 1000); window.setTimeout(function() {adDiv.style.display = 'none'}, hideSec * 1000); }); }