プロが教えるわが家の防犯対策術!

エクセルファイルAとBが別々のフォルダにあります。Aの中でBのセルを参照したいので、Aの中のセルに「=」を書き、そのままBのファイルの該当セルをクリックし、リターンを押しました。

すると、
「='C:\Documents and Settings\USERNAME\デスクトップ\フォルダ名\サブフォルダ\サブサブフォルダ\サブサブサブフォルダ\[エクセルファイル名.xls]シート名'!E8」
こんな感じの値が代入されて希望通りの結果になりました。

このAとBのフォルダ構造を維持したまま別の場所に移動させたいのですが、「='C:\Documents and Settings\USERNAME~~~」と言う感じの絶対参照になっていますのでエラーになってしまいます。
この部分を相対参照で記述できれば移動ができると思うのですが方法がわかりません。

どうしたらいいでしょうか。


どこかのセルにフォルダ位置を書いておいて間接参照みたいな方法でもいいのですが・・・

VBAでは"\..\~~~"みたいな感じで相対参照ができるようですが、大げさななのでVBAまでは使いたくないです。

A 回答 (1件)

2つのファイルが同じ階層(デスクトップとか、あるフォルダの中)とかになければ難しいと思います。

もし、階層が違っていれば、まずはどちらか片方の階層にもう一方のファイルを移動してみてください。そうしてリンクの式が入った方のファイルを開けば自動でOKになる場合もあるかと思います。開く途中でリンク先を聞いてくるようなダイアログがでてきたら、手動でリンク元ファイルを選択してください。
そこまで終わったあと、2つのファイルを同時に別の階層にしてあげるなどすればいいと思います。別々のところに保存しなきゃまずいのであれば、元ファイルをC:直下の階層に保存してあげるとかすればいいかと思いますよ。デスクトップとかにショートカットを作ってそこから開けばいいだけですから。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

御指摘のように同じフォルダ内であればフォルダの指定が不要ですから、どこへ移動しても全く問題ありません。ですが、別フォルダにしたいのです。

また、ダイアログの件もその通りですが、ダイアログは出したくないです。他人に使わせたいので・・・

C:直下にすればいいというのもその通りですが、どこへ移動してもつかるようにしたいというのが趣旨ですのでフォルダの指定はできません。

今別の方法を考えているのですが、1年に1回だけのインスタントプログラマーにはなかなか難しいですね

お礼日時:2008/04/19 17:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!