プロが教えるわが家の防犯対策術!

INDEX関数やMATCH関数で値を取得した参照先セルの行番号を1つ増やしたいです。

=INDEX(電気メーター!$B$3:$L$38,MATCH(学校!A6,電気メーター!B3:$B$38,0),4)

で取得したい値は学校シートに入力できたのですが、上の数式で取得した電気メーターシートの値
すぐ下の行番号セルの値を取得するにはどうすればいいでしょうか。

上の数式で取得したセルが「電気メータシートのE6」だとすると次に取得したい値は
「電気メーターシートのE7」です。

A 回答 (3件)

》 INDEX関数やMATCH関数で値を取得した参照先セルの行番号を1つ増やしたい


記述がチト奇妙かと。
MATCH関数で得た数値 row をINDEX関数内の行番号の引数 row としているのなら、
INDEX関数内の行番号の位置を row+1 にするだけェ~かと。
つまり、下記の式にしてみれば?
=INDEX(電気メーター!$B$3:$L$38,MATCH(学校!A6,電気メーター!B3:$B$38,0)+1,4)
    • good
    • 0

=INDEX(電気メーター!$B$3:$L$38,MATCH(学校!A6,電気メーター!B3:$B$38,0),4)


   ↓
=INDEX(電気メーター!$B$3:$L$38,MATCH(学校!A6,電気メーター!B3:$B$38,0) +1 ,4)

条件が曖昧なんで、曖昧なりの答えです。
意図する結果が得られなくても恨まないでね。
    • good
    • 1
この回答へのお礼

ありがとうございます!!無事解決しました。

お礼日時:2024/04/14 16:45

こんにちは



文字通りに一つ下の行にするのなら、Match関数で得た番号に+1すれば良いので
 MATCH(学校!A6,電気メーター!B3:$B$38,0)+1
のようにして、参照すれば良いのではないでしょうか?

少し、トリッキーですが、参照元を1行分ずらして
=INDEX(電気メーター!$B$4:$L$39,MATCH(学校!A6,電気メーター!$B$3:$B$38,0),4)
としても同じ結果を得られると思います。
(+1する式の場合は、39行目(=38+1)を参照しようとするとエラーになります)

・・というか、必ず4列目(=E列)を参照するのなら、
=INDEX(電気メーター!$E$4:$E$39,MATCH(学校!A6,電気メーター!$B$3:$B$38,0))
でも良さそうに思われます。


※ 同じ行を参照するのなら(=元の式の場合)VLOOKUP関数の方が適当に思えますが、1行ずらすのであれば、MATCH、INDEXの組み合わせになりますね。
    • good
    • 0
この回答へのお礼

ありがとうございます。必ず4列目参照というわけではないので「Match関数で得た番号に+1すれば良い」でOKでした。助かりました。

お礼日時:2024/04/14 18:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A