エクセルはデータ解析・管理を行うツールとして非常に機能が高く、上手く使いこなせると業務を大幅に効率化できるため、その扱いに慣れておくといいです。
ただ機能が充実しているあまり初心者にとっては処理方法がよくわからないことも多いといえます。
例えばエクセルにてデータが入力されている最終行のデータを取得するにはどう処理すればいいのか理解していますか。
ここではエクセルにて最終行のデータを取得する方法について解説していきます。
エクセルにて最終行を取得する方法【関数を用いて行の最後の値や番号を取得】
それでは、以下のサンプルデータを用いて最終行のデータを取得する方法について確認していきます。ここでは、データが連続している場合(空白セルなし)について解説します。
最終行のデータを取得するには、
・指定された行と列が交差する位置にある値を返す「INDEX関数」
を組み合わせて使用します。
以下のよう、最終行のデータを表示したいセル(ここではC2)に、「=INDEX(A1:A10,COUNTA(A1:A10))」を入力します。
上図の関数を解説します。
INDEX関数の「配列」には、A列のデータ範囲(A1:A10)を指定します。
INDEX関数の「行番号」には、COUNTA関数を指定します。
COUNTA関数にて、A列のデータ範囲(A1:A10)より空白でないセルの個数を計算しています。データに空白セルはありませんので、計算したセルの個数=最終行となります。
ENTERボタンにて確定させます。A列のデータが入力されている最終行のデータを表示することができました。
良く使用する方法なのでこの機会に覚えておくといいです。
なお、VBA(マクロ)にて最終行を取得・コピー等を行う方法は以下で解説しているため参考にしてみてください。
エクセルにて関数を用いて最終行を取得する方法【空白あり】
次に、以下のサンプルデータを用いて最終行のデータを取得する方法について確認していきます。ここでは、データが連続していない場合(空白セルあり)について解説します。
先ほどの例と異なり、A列には空白セルが存在しています。
まずはB列にてA列の値が空白であるかどうかを確認していきます。
具体的には以下のよう、A列が空白かどうかを表示したいセル(ここではB1)に、「=IF(LEN(A1)>0,ROW(),0)」を入力します。
上図の関数を解説します。
IF関数、該当セルの文字列の長さ計算するLEN関数、行番号を返すROW関数を組み合わせて使用します。
IF関数の「論理式」には、A1の文字列の長さを計算し0以上(空白でない)であるか否かを指定します。
IF関数の「値が真の場合」には、該当セルの行番号を指定します。
IF関数の「値が偽の場合」には、0を指定します。
ENTERボタンにて確定させます。オートフィル機能(計算したセルの右下にカーソルを合わせると出てくる十字をドラッグ&ドロップ)を使うことで、B列には、A列のデータが空白だった場合には「0」、空白でない場合には「行番号」が表示できました。
次に以下のよう、最終行のデータを表示したいセル(ここではC2)に、「=INDEX(A1:A10,MAX(B1:B10))」を入力します。
上図の関数を解説します。
INDEX関数の「配列」には、A列のデータ範囲(A1:A10)を指定します。
INDEX関数の「行番号」には、MAX関数を指定します。
MAX関数にて、B列の最大値を取得します。B列にはA列が空白セルでない場合のみ行番号を表示していますので、その行番号の最大値が最終行となります。
ENTERボタンにて確定させます。A列のデータが入力されている最終行のデータを表示することができました。
こちらも良く使用する方法なのでこの機会に覚えておくといいです
まとめ 【Excel】エクセルにて最終行を取得する方法【関数を用いて行の最後の値や番号を取得(空白ありの場合など)】
ここでは、エクセルにて最終行のデータを取得する方法について解説しました。
基本的に、空白セルが存在しない場合にはCOUNTA関数とINDEX関数、空白セルが存在する場合にはIF関数、LEN関数、ROW関数、INDEX関数、MAX関数を組み合わせて使用することで処理できます。
エクセルでのさまざまな処理に慣れ、日々の業務を効率化させていきましょう。
コメント
[…] […]