- ベストアンサー
エクセル関数でセルに書いたファイル名を参照する方法
- エクセルの関数を使用して、セルに書かれたファイル名を参照する方法について知りたいです。エクセル関数初心者の方でも利用できる方法を解説します。
- 他の開いているファイルの特定のデータを参照するために、エクセル関数(主にOFFSET関数)を使用する方法について説明します。
- 特定のファイル名を別のセルに入力し、それをエクセル関数で参照する方法について解説します。ファイル名をセルで管理することで柔軟にデータ参照を行うことができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
(1))http://www.excel-jiten.net/formula/ref_other_books.html の最後のほうの他ブックセル参照をまず勉強すること。 (2)次にその文字列を、セルに在るブック名文字列やシート文字列および特殊記号を&で連結して正しい文字列を作ってください。そのセルをB1セルと仮定すると (3)=INDIRECT(B1)として正しい値が取れて居るか確認する (4)=INDIRECT() のカッコ内にB1の式を入れて完成形にする(B1の式の先頭の=は不要だが) 相当エクセル関数のベテランになるまでは、(2)-(4)のステップはやったほうが良い。
その他の回答 (3)
- keithin
- ベストアンサー率66% (5278/7941)
直接参照: =[afile.xls]bsheet!$A$1 間接的に参照: =INDIRECT("["&B2&"]bsheet!A1") 間接的に参照しながら関数で処理する: 目的のシートのA3セルを =INDEX(INDIRECT("["&B2&"]bsheet!A1:A10"),3) ただしafile.xlsは必ず「開かれていなければなりません」。 閉じたブックに対してこの方法は使えませんので,実際には閉じたまま作業したかった時は ○必要なブックを網羅して参照する式を裏シートにでもずらり並べておき,その範囲を可変で参照する式を作成する ○マクロを使う などの方法になります。
お礼
非常にわかりやすい回答をありがとうございます。 「OFFSET関数等」と書いたところにもちゃんと回答してくださったんですね。 感激しました。 INDEX関数というものの存在がわかって大変勉強になりました。 じっくり取り組んでみようと思います。 どうもありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
INDIRECT関数を使ってください。 =INDIRECT(B2&"bsheet!$A$1")
お礼
ご回答ありがとうございます。 私の使っているエクセルの場合、B2だけでは読みこんでくれないようです。 1番目の方の回答にある[" & B2 & "]が必要なみたいです。 どうもありがとうございました。
- kmetu
- ベストアンサー率41% (562/1346)
=INDIRECT("[" & B2 & "]bsheet!$A$1") としてください。
お礼
早速のお返事ありがとうございました。実は、初めてのOKwaveでの質問だったため回答の見方がよくわからず、3時間も経って拝見することになり失礼しました。 ちゃんとファイル名を読み込んでくれました。 もしこの回答をすぐに見ていたら、即座に解決で終わっているところでした。 ありがとうございました。
お礼
ご親切にありがとうございます。 こういう方法があるのかと大変勉強になりました。 おっしゃるとおり、一歩ずつ進めようと思いました。 ありがとうございました。