エクセルについての質問です。

下記のような Sheet1 というシートに、
No、名前、住所の一覧があります。

その情報を元に、1 というシートの該当する箇所に値を入れたいと思います。

[Sheet1]
1|なまえ1|じゅうしょ1
2|なまえ2|じゅうしょ2
3|なまえ3|じゅうしょ3

[1]
No|1
名前|なまえ1
住所|じゅうしょ1

Noはシート名なので下記の通りに取得できます。
=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1)))

問題は、名前と住所の部分で、
下記のようにすると取得はできるのですが、
シートを追加した時には、B1→B2、C1→C2と、手作業で修正しなければなりません。
名前 =Sheet1!B1
住所 =Sheet1!C1
これをうまく、B1の部分を動的にB2、B3とシート名(No)から参照できないでしょうか。

よろしくお願い致します。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2009/04/09 09:41:37
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:Mook No.1

回答回数1314ベストアンサー獲得回数393

ポイント60pt

アドレスを文字列で指定するのはINDIRECT 関数ですので、下記のようでどうでしょうか。

名前  =INDIRECT("Sheet1!B" & RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) )
住所  =INDIRECT("Sheet1!C" & RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) )

http://officetanaka.net/excel/function/function/indirect.htm

id:takeru-c

ありがとうございます!

これでできました。

シート名は、B1に入っているので、下記のとおりでできました。

=INDIRECT("Sheet1!B" & B1 )

2009/04/09 09:41:24

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません