リンク切れ予防 : 外部参照やリンクで相対パスを維持するには

あるファイルの内容を別のファイルから呼び出す外部参照やリンク機能では、ファイルのパス(場所と名前)を指定します。このパスがExcelやWordファイルに保持される形式には、絶対パスと相対パスの2種類があります。

絶対パスは、相手がどこにいても必ず国名から書く住所のようなものです。「C:\XXXXX\…」や「https://XXXXX/…」のように場所と名前を先頭から記述します。フルパスと呼ぶこともあります。

相対パスは、相手が同じ市内なら町名から書く住所のようなものです。リンク元のファイルから見たリンク先の場所と名前を記述します。

絶対パスによるトラブル例

絶対パスは省略のない正確な情報なので確実なように思えますが、換言すれば「融通が利かない」ということなので、トラブルの原因になりやすいのです。

データの受け渡し

受け渡し先でもパスを完全に再現しないと、リンク切れエラーになります。再現に手間もかかりますし再現できない場合もあります。「C:\Users\ユーザー名\…」のようにユーザー名を含むパスや、「D:\…」のように環境よっては存在しないドライブレターを含むパスは要注意です。

フォルダーの移動・名前変更

パスに含まれるフォルダーの場所や名前を変更すると、リンク切れエラーになります。変更のたびにリンクのパスを修正する必要があります。

フォルダーのコピー(注意!

実はこのケースが最も危険です。例えば、[Ver.1]フォルダーをコピーして[Ver.2]フォルダーを作成するとします。この中のファイル同士で絶対パスの参照が使われていると、[Ver.2]内のファイルから[Ver.1]内のファイルを参照し続けてしまいます。リンク切れエラーにはならないので、誤りに気付きにくいのです。

リンク誤りの検出方法
コピー元フォルダーの名前を変えるか、zipファイルにまとめてしまうのがお勧めです。上記のようなリンク先の潜在不具合は、リンク切れエラーとして検出できるようになります。

相対パスを維持するには

相対パスは、ファイル同士の位置関係や名前が変わらない限りリンクは有効に機能します。例えば親フォルダーごと移動してもリンク切れになることはありません。

絶対パスと相対パスのどちらを使うかは、ファイルの位置関係によって決まります。ユーザーが選択することはできません。

相対パスを維持するには、次の位置関係でファイルを作成する必要があります。

リンク先がリンク元と同じフォルダー内

リンク先がリンク元の下位フォルダー内

相対パス/絶対パスの確認はできません

外部参照やリンクで各々が相対パスになっているかを、編集画面上で確認したり変更したりすることは残念ながらできません。実際に移動してみて確認するほかないのです。

数式内のパスの表記で確認できるのでは?

数式バーなどの数式内での表示には、ファイル名のみ/絶対パスの2パターンがあります。ただ、これは実際に保存されているパス形式とは関係なく、リンク先を開いているか閉じているかで切り替わるものです。

(例) Sub1.xlsx を閉じているとき/開いているとき
閉 : ='D:\test\[Sub1.xlsx]Sheet1'!$A$1
開 : ='[Sub1.xlsx]Sheet1'!$A$1

数式バーで絶対パスを相対パスに書き換えたら?
数式内の記述を相対パスに書き換えても、ファイルを開き直すと元に戻ってしまいます。相対パスに変更することはできないのです。

検索・置換にも影響します
パスの表記状態は外見だけでなく検索・置換の操作にも影響します。上記の例で「D:\test\」を指定して数式を検索した場合、Sub1.xlsx を閉じていると検出されますが、開いていると検出されません。

タイトルとURLをコピーしました