プロが教える店舗&オフィスのセキュリティ対策術

名前と年齢の表があり、名前がAの列に、その人の年齢がBの列に書いてある表があります。
ある人の名前(佐藤さんとします)の年齢を調べたいとき、名前からMATCH関数を使いA列の40番目にあることがわかるのですが、その時、Bの40の年齢をD1に書きたいのですがどんな関数を入れたらよいでしょうか?
Range("C1")に【=MATCH("佐藤",$A$1:$A$285,0)】の関数を入れ、佐藤さんの書かれている行数を特定します。その値が40と出た場合、D1に、CIの情報を入れて表現したいのですが・・・

A 回答 (2件)

[D1]=INDIRECT("B"&C1)



"B"&C1 で、「B40」というセルアドレスができます。
INDIRECT(B40) で、B40の値を出力します。

こういうので良いかな?
    • good
    • 1
この回答へのお礼

ありがとうございます。

"B"&C1 でB40のセルアドレスができるのは、サーカスを見ているようで、びっくりしました。
今後の参考にさせていただきます。

お礼日時:2020/08/06 11:42

こんにちは



元の表がA1:B285の範囲にあるのなら、普通は
 =VLOOKUP("佐藤",A$1:B$285,2,0)
で、直接求めてしまうかな・・・

勿論、ご質問のようにMATCH関数で探しても良いので、その場合には
(C1に結果があるとして)
 =INDEX(B:B,C1)
といった感じでしょうか。
    • good
    • 1
この回答へのお礼

ありがとうございます。

バッチリです。
シンプルで分かりやすく、大変参考になりました。
INDEXの使い方がわからなかったので、本当に便利な式だと理解できました。
ありがとうございました。

お礼日時:2020/08/06 11:46

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