本ページはプロモーションが含まれています
EXCELでまたやりたいことが出てきたんです。
縦方向に入力されたシートがあるんだけど
一番下に入力されてるのが何かを参照したいんです。
それだったら関数を組み合わせれば大丈夫。
昨日やった配列数式も使わないでもできるよ。
じゃあ、教えてください!
EXCELで一番下に入力された値を参照する方法
まずは今回使うシートはこれです。
どっかで見たことありますか?
配列数式で使ったシートをそのまま利用しました。
リユースです(笑)
このシートを使って、C列の一番下のセルに入ってる値を参照する方法です。
入力式はこちらです。
=INDEX(C:C,MATCH(MAX($C:$C)+1,$C$C,1)),1)
この数式の意味を紹介します。
Excelの魔術師へ! さいしょの一歩INDEX関数
INDEX(参照範囲,行番号,列番号)
の形式で使ってます。
返される値は指定された参照範囲内の行、列で指定されたセルに入力されている値です。
参照範囲 は C:C です。
行番号は (MATCH($C$C)+1,$C$C,1)。
列番号は 1。
C列の範囲の1列目でC列を指してます。
MATCH関数
MATCH(検査値,検査範囲,照合の型)
の書式です。
返される値は照合条件にあったセルの相対位置を返します。
例えば
MATCH(2,(1,2,3),0)
ならば2番目なので2を返します。
検査値は MAX($C:$C)+1
検査範囲は $C:$C
照合の型は 1
照合の型は下記の3つのなかから指定します。
1は省略可能です。
照合の型の指定値 | 意味 |
1または省略 | 検査値以下の最大の値を探します |
0 | 検査値と等しい最初の値を探します |
-1 | 検査値の値以上でかつ最小の値を探します |
MAX関数
MAX(検査範囲)
の形で使ってます。
検査範囲の中で最大の値を返します。
範囲でなく複数の引数でも使えます。
例えば
MAX(2,5,10,3)だったら10を返します。
まとめると、どういう事?
つまり、MAX関数を使ってC列の最大の値を探しました。
それに+1してます。
だからC列に入力されているこれより大きな値は存在しません。
その値を元にしてMATCH関数でC列の中で一番下(一番行番号が大きい)のセルの値を求めます。
C列の一番下のセルが求められたのでそのセルの値をINDEX関数で指定して読みだしています。
ちょっと付け足して実践的に
ちょっと追加してみました。
一番下の値を読みだしたら、その日付もあったほうがいいなと。
入力した数式はほぼ同じ。
C列で一番下のセルに入力されたのと同じ行の日付のセルを参照しました。
今回は説明の為に同じシートで行いました。
複数の似たようなシートやファイルが存在している場合は
まとめのファイルを1つ作成しておいて
この参照をする事で最新の入力内容を一目で確認可能。
ファイルをひとつづつ開いたり、シートを切り替えたりが必要なくなります。
このブログがお役に立ったら嬉しいです。
Excelの魔術師へ! さいしょの一歩ほかにもいろいろ書いてます
↓ 下記からご覧ください
サイトマップ
ブックマークして頂けると嬉しいです
よろしくお願いいたします
コメント