• ベストアンサー

数値で示されたセルを表示させたい

エクセルで、C1からG1の5つのセルに適当な数値が入っており、B1に1から5の数値を入れたときに、A1の箇所に、1だったらC1の、2だったらD1の、3だったらE1の、4だったらF1の、5だったらG1の数値を表示させようと思うと、どういった関数を使えば宜しいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 一例です。 B1セルには必ず 1~5 のいずれかの数値が入るとします。 A1セルに =IF(B1="","",INDEX(C1:G1,,B1)) という数式を入れてみてはどうでしょうか? ※ エラー処理していませんので、B1セルが 1~5 以外の数値の場合はエラーになってしまいます。 参考になれば良いのですが・・・m(_ _)m

toromo
質問者

お礼

真っ先に対応頂いてありがとうございました。 他の方の回答も非常に的確でしたが、この回答で私の作業自身はクリア致しましたので、ベストアンサーにさせて頂きました。

その他の回答 (3)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 A1セルに入力する関数を次の様なものにすると良いと思います。(エラー処理済み) =IF(ISNUMBER(MATCH(B1,{1,2,3,4,5},0)),INDEX(C1:G1,B1),"") ※INDEX関数で参照するセル範囲が1列(或いは1行)に並んでいる場合には、行方向と列方向の位置を、別個に指定する必要は無く、単純に、「その配列の先頭から何番目」かを指定するだけで済みます。

toromo
質問者

お礼

回答ありがとうございました。 INDEX関数の説明まで頂き、感謝致します。 この短時間の間に、これだけ色々な種類の回答が出てくるとは、エクセルはやはり奥が深いです。

  • MASUKUBO
  • ベストアンサー率22% (4/18)
回答No.3

エラー表示も解消する式でしたら例えばA1セルには次の式を入力します。 =IF(OR(B1=""B1>5),"",INDEX(C1:G1,B1))

toromo
質問者

お礼

回答ありがとうございました。 なるほど、エラー回避も出来るとは素晴らしいです。 参考にさせて頂きます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 B1の妥当性チェックは適宜お願いします。 =OFFSET(B1,,B1) =CHOOSE(B1,C1,D1,E1,F1,G1)

toromo
質問者

お礼

回答ありがとうございました。 これだと、セルが離れていても大丈夫なんですね。 参考にさせて頂きます。

関連するQ&A