• 締切済み

Excel セル参照で参照ブック指定

指定したセルに拡張子を抜いたブック名を入力し、そのセルを参照してブック参照することは可能でしょか? 「INDIRECT」では参照ブックを開かないと表示されないため目的が達成されません。 (例) Book1.xlsx A1=test Book2.xlsx A1=Book1 A2=["&(A1)&".xlsx]Sheet1'!A1 何か良い解決策をご存知の方、ご教授願います。

みんなの回答

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

>試してみましたがうまく動かないようです。 前回の回答では未検証でしたので、今回は検証してみました。 確かにINDIRECT関数では閉じたファイルを参照できないようです。 尚、前回提示しました下記の数式は憶測によるものです。 A2=INDIRECT("[C:\ユーザー\bunjii\マイ ドキュメント\"&A1&"]Sheet1!A1") 誤りであることを確認しました。 閉じているファイル名を指定して参照するときは次のようになります。 ='D:\[Book1.xlsx]Sheet1'!A1 拡張子を省略すると自動的に付与されます。 誤りの回答を致しましたこと、お詫び致します。

cccbbb
質問者

お礼

bunjii 様 ご確認有難うございます。 いただいた内容で指定したブックを参照する事は可能ですが、A1の値を参照した上で参照先ブックを変更することはできません。 ブック指定の["&A1&"]が動けば解決しそうなんですが。。。

すると、全ての回答が全文表示されます。
  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

>指定したセルに拡張子を抜いたブック名を入力し、そのセルを参照してブック参照することは可能でしょか? 可能です。 >「INDIRECT」では参照ブックを開かないと表示されないため目的が達成されません。 そんなことは無いです。 開いていないブックを参照するときはフルパスを含むファイル名が必要です。 >(例) 提示された数式は正しくありません。 数式を提示するときは正しい数式にしてください。 Book1が開いているとき A2=["&(A1)&".xlsx]Sheet1'!A1      ↓ A2=INDIRECT("["&A1&"]Sheet1!A1") Book1がC:\ユーザー\bunjii\マイ ドキュメント\に保存されているとき A2=INDIRECT("[C:\ユーザー\bunjii\マイ ドキュメント\"&A1&"]Sheet1!A1")

cccbbb
質問者

お礼

回答有難うございます。 試してみましたがうまく動かないようです。 ファイル保存先:Dドライブ直下 ■Book1 A1=test ■Book2 A1=Book1.xlsx B1=INDIRECT("[D:\"&A1&"]Sheet1!A1") Book2のB1に「test」と返ってくれば良いのですが。

cccbbb
質問者

補足

下記のようにクォーテーション追加で動きましたが、やはり「INDIRECT」では一度でも同時に開いていれば問題ないのですが、Book2を開きなおすとエラーでますね。 =INDIRECT("'D:\["&A1&"]sheet1'!A1")

すると、全ての回答が全文表示されます。

関連するQ&A