きなこSHOW

VBAと日々の戯言

Excel VBAで最終行を取得するサンプルを紹介します

Excelで事務処理系を自動化するツールを普段作っていますが、データが入力されている最終行とか最終列を取得したい時ってけっこうあります。
Excelのバージョンを問わずツールで使いまわせるように、私はvbaで関数化しています。
コピーして使えるサンプルを紹介しますね!

行数がいつも固定の場合は必要ないのですが、そうも行きませんので、データが入力されている最終のセル、行を検出するプロシージャは出番が多くあります。
最終セルを検出する方法はいろいろあるのですが、それぞれに一長一短があります。
特性を理解したうえでその場に応じた適切な方法を、となるとなかなか難しいものです。

今回紹介するサンプルは、以下の条件に対応しています。

  1. 空白は含まれない表の最終行を取得したい
  2. 空白が含まれない=データがすべて入力されている特定列の最終行を取得したい
  3. 空白は含まれてるけど特定列の最終行を取得したい
  4. 空白は含まれてるけど全体的に最終行を取得したい

「1」「4」は簡単ですよね。「2」「3」で悩むケースが多いのかと。
これから紹介するサンプルは、すべてのケースに対応しています。

データが入力されている最終行を取得するサンプル

サンプルコードの使用はすべて自己責任でお願いいたします。

次回はこのサンプルの呼び出し方法と、最大列を取得する関数を紹介します。