Deprecated : The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
関数を使って最終行のデータを取り出す:Excel関数の技
Home » エクセル関数の技 » 関数を使って最終行のデータを取り出す
作成:2025/9/27
最終行のデータを取得する topへ
データの最終行のデータを取得するのは、結構面倒な数式で求めていました。
VBAの方が簡単に求めることができていました。
C2セルに最下行の値を表示するコードです。
Sub test()
Cells(2, "C").Value = Cells(Cells(Rows.Count, 1).End(xlUp).Row,
1).Value
End Sub
Excel for Microsoft365、Excel2024では便利な関数や機能が追加されています。
これからは簡単な数式で計算ができるようになります。
TAKE関数 はExcel for Microsoft365、Excel2024で使用することができます。
トリム参照やTRIMRANGE関数 はExcel for Microsoft365で利用することができます。
C4セルは =TAKE( A.:.A ,-1) とTAKE関数とトリム参照で求めています。
C6セルは =TAKE( TRIMRANGE(A:A) ,-1) とTAKE関数とTRIMRANGE関数で求めています。
A.:.A と TRIMRANGE(A:A) はA列の空白行を省いた配列を取得します。
TAKE関数の引数を -1 として最下行のデータを取得します。
CHOOSEROWS関数を使うこともできます。
CHOOSEROWS関数 はExcel for Microsoft365、Excel2024で使用することができます。
C4セルは =CHOOSEROWS( A.:.A ,-1) とCHOOSEROWS関数とトリム参照で求めています。
C6セルは =CHOOSEROWS( TRIMRANGE(A:A) ,-1) とCHOOSEROWS関数とTRIMRANGE関数で求めています。
ちなみに、複数列のデータの取得も簡単にできます。
=CHOOSEROWS( A.:.B ,-1)
=TAKE( A.:.B ,-1)
Excel for Microsoft365、Excel2021以降のバージョンでは動的配列数式が利用できます。
C4セルには =INDEX(A:A,MAX((LEN(A:A)>0)*ROW(A:A))) と入力しています。
Excel2019以前のバージョンでは [Shift]+[Ctrl]+[Enter] で{ }でくくった、配列数式にする必要があります。
【説明】
=(LEN(A:A)>0)*ROW(A:A) で空白でないセルの行番号を取り出しています。
=INDEX(A:A, MAX( (LEN(A:A)>0)*ROW(A:A) ) ) 最大値の行の値をINDEX関数で取り出しています。
スポンサードリンク
Home »
エクセル関数の技 » 関数を使って最終行のデータを取り出す
PageViewCounter
Since2006/2/27