以前から疑問に思っていたのですが,Excelのファイル間でセルのデータを参照したいとき,絶対パスでExcelのファイルを指定しているようですが,これを相対パスで参照することはできないものでしょうか?
例
- 「C:\Excel_test」フォルダを作りました。
- その中で,parent.xlsのA1セルに,"参照元のデータです"を入力。
- 同じフォルダ内のsibling.xlsのA1セルにリンク貼り付けをすると,
='C:\Excel_test\[parent.xls]Sheet1'!$A$1
となります。
- 「C:\Excel_test\child_dir」フォルダを作りました。
- このフォルダ内のchild.xlsのA1セルにリンク貼り付けをすると,上記と同様
='C:\Excel_test\[parent.xls]Sheet1'!$A$1
となります。
ここで,「Excel_data」フォルダの名前が「Excel_data_changed」になった場合,sibling.xlsでは,以下のように絶対パスが自動で変更されますが,
='C:\Excel_test_changed\[parent.xls]Sheet1'!$A$1
child.xlsファイルからは,parent.xlsのA1セルを参照できなくなってしまいます。
そこで,
- sibling.xlsでは,
='[parent.xls]Sheet1'!$A$1
で参照したいし,
- child.xlsでは,
='..\[parent.xls]Sheet1'!$A$1
で参照したいのですが…。このような場合,皆さんはどのようにされているのでしょうか?