- 締切済み
Excelのセルの参照について
Excelでセルを参照するにはB3やA7などのように指定しますが、以下のような参照はできるのでしょうか? 1、任意のセルに何らかの数字が入っている状態で 2、その数字を行として参照する。 たとえばA7に3という数字が入っているとします。 そのA7の値を行番号としてB3やC3を参照する、といった具合です。 あまりうまく説明できないのですが、情報が不足していましたらまた補足します。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- bunjii
- ベストアンサー率43% (3589/8249)
- eden3616
- ベストアンサー率65% (267/405)
何種類かあります。 INDIRECT、INDEX、OFFSETなどを使えば可能です。 INDIRECT セルアドレスを組み合わせて参照できます 「=INDIRECT("A"&1+5) 」とした場合は「 =A6 」と同じ意味になります INDEX 指定した範囲の中で、何行何列の場所を参照します 「B1:C3」の範囲を指定した場合、B1を1行1列としたときC3は3行2列になります (右方向に1セルずれると列が1列増加、下方向に1セルずれると行が1行増加すると考えてください) OFFSET 基準セルからみて行列方向にどれだけズレたかを指定してセルを参照できます B1を基準セルとしたとき自分自身(基準セル)の場所は0行0列ですので 「=OFFSET(B1,0,0)」とすると「=B1」と同様の意味になります (右方向に1セルずれると列が1列増加、下方向に1セルずれると行が1行増加すると考えてください) 他の組み合わせる関数などによりどれを利用するのがいいかは変わりますが、一番わかりやすいのはINDIRECTです。 添付画像を参照ください。 「B1:C3」を取得元のテーブルとして、「A7」で行番号を指定しています 「D8:D15」に上記3つの方法でB列及びC列の指定行を参照する数式を入れています (実際に入れている数式と同じ内容をE列に表示していますのでご参考ください)
- mshr1962
- ベストアンサー率39% (7417/18945)
方法はいくつもありますよ。 ■OFFSET関数:基準セルからの行移動値の設定 =IF($A$7>0,OFFSET($B$1,$A$7-1),"") ■INDEX関数:セル範囲の順番号の設定 =IF($A$7>0,INDEX($B:$B,$A$7),"") ■INDIRECT関数:代理参照 =IF($A$7>0,INDIRECT("B"&$A$7),"")
- karorumon
- ベストアンサー率26% (25/94)
できると思います。 http://pc.nikkeibp.co.jp/article/technique/20080625/1005498/ 例えば、これですかね?
- MackyNo1
- ベストアンサー率53% (1521/2850)
>たとえばA7に3という数字が入っているとします。 そのA7の値を行番号としてB3やC3を参照する、といった具合です。 質問にそのまま対応するなら以下のようなINDIRECT関数を使います。 =INDIRECT("B"&A7) 通常はINDEX関数やOFFSET関数で対応するほうが汎用性があり便利なことが多いと思います。 =INDEX(B:B,A7)