• ベストアンサー

エクセル 他シートのセル参照について

sheet1とsheet2という2つのシートがあります。 sheet1のセルに=sheet2!A1と設定して、sheet2のA1の内容を参照するようにしてあります。 このA1の1の部分を変数にしたいのですが、どのように設定すればよいのでしょうか?

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

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

変数ということの意味が不明ですが、可変ということでいいのでしょうか? 例えば、Sheet2のA1に「B2」とあれば、Sheet2のA2にSheet1!A2の値を参照するというようなことでいいのでしょうか? 上記の例なら、A2に  =INDIRECT("Sheet1!" & A1) という式をいれておけば、A1の値がB2ならSheet1のB2セルを、C5ならC5セルを参照することができます。 意味が違っていたら、無視してください。

coral_japan
質問者

お礼

ご回答ありがとうございます。 INDIRECT関数でできました!。 感謝します。助かりました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

この問題は定石がありINDIRECT関数です。 =INDIRECT(●)の●の中は文字列で、 その ブック(本質門では対象外) シート セル の部分を表す文字列をリテラル(””で囲む文字)と&とセル番地 (ここが変わる部分になるでしょう)を切り貼りして作り上げればよい。 =Sheet2!A2の形であれば変化させるのはSheet1かA1の場合でしょう。 A3にSheet3 B3にA5 と入っていれば=INDIRECT(A3&"!"&B3) と作ればよい。セル番地でSheet3!A5の文字をそのまま 置き換えればよい。置きかえられないところは””で囲って& つなげればよい。

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

仮にA1が変数としたら、=INDIRECT("sheet2!A"&A1)で表現できます。 または、行・列を変数とする場合、=OFFSET(基準セル,行値,列値)で基準セルに行・列値(注意:0相対の値)で表現できます。 仮に、Sheet2!A1からSheet2!B2を参照する場合、Sheet2!$A$1が0行・0列なので行値は1,列値は1となります。 この値をA1・A2を変数とすると、=OFFSET(Sheet2!$A$1,A1,A2)となります。

  • CMLT
  • ベストアンサー率40% (143/357)
回答No.2

どういう変数にするのかによって関数もさまざまに変わってくると思います。 A1の1の部分をどう引っ張ってくるかにもよるでしょう。 例えばB1セルの数値をその部分に当てはめるというなら、 =INDEX(Sheet2!A:A,B1) のような関数式を使えば済みます。

関連するQ&A