質問: excelでファイル参照を数式で表現したい excel上で数式でファイル参照を表現し、 参照先のセルの値を表示させたいのですが、文字列として表示されてしまいます。 どのように記述すれば解決できますでしょうか。 現在、以下の方法を試みていますがうまくいきません。 ・a1セルに参照先のフォルダパスを記入 (例: d:\application\ ) ・b1セルに参照先のファイル名を記入 (例: a.xlsx ) ・c1セルに参照先のシート名、セル番地を記入 (例 : sheet1'!$a$1 ) ・d1セルにa1~c1セルを組み合わせた数式を記述 ="='" & a1 & "[" & b1 & "]" & $c$1 ※ 数式として次のようになります。 ='d:\application\[a.xlsx]sheet1'!$a$1 d:\application\a.xlsx のsheet1のa1セルに test と記述されいる場合、 ここでd1セルに test と表示されてほしいのですが、 上記の数式が、そのまま文字列として表示されてしまいます。 a1~d1の書式は全て「標準」に設定しています。 また、このd1の値を他のセルに値として貼り付けて、enterを押せば、test と表示されます。 数式に誤りはないはずなのですが、d1セルで直接 test と表示する方法はあるのでしょうか。
回答: =indirect("'" & a1 & "[" &b1 & "]" &c1) にします。 なお、参照先のブックが同時に開かれてない場合は、参照できないので「#ref!」が出ます。 正しく表示するには、参照されるブックも同時に開いておく必要があります。