エクセルの「リンクの編集」で「リンクの解除」ができないときの対処方法、リンク元の見つけ方

他のエクセルのブックから、シートをコピーしたときに良く遭遇する現象として、エクセルを開いたときに、ダイアログが表示されて

「このブックには更新できないリンクが1つ以上含まれています。」

リンク元を変更するか、再度値の更新を試す場合は、「リンクの編集」をクリックしてください。

または

このブックには、安全ではない可能性のある外部ソースへのリンクが一つ以上含まれています。
リンクを信頼できる場合、リンクを更新して最新リンクを取り込みます。信頼できない場合は、データをそのまま手元で処理してかまいません。

といわれることがあります。

言われたとおり「リンクの編集」を押して、下記のようなダイアログになるのですが、そこで、「リンクの解除」をいくら押しても解除ができず、エクセルを開くたびに聞かれるのがわずらわしい。。。

という方への対処法です。

警告が出る理由

ローカルのPCにある別なファイルの中のセルを数式で参照している場合、エクセルを別な人に送ったりして、その元ファイルが参照できなくなった場合にこのエラーが出る場合があります。

その場合は、参照しているセルを見つければいいのですが、それが結構大変なんですよね。。

その参照しているセルを見つけるには、

「ホーム」⇒「編集」⇒「検索と選択」から検索用のダイアログを表示します。

ダイアログでは、

  • 検索場所・・・> ブック
  • 検索対象・・・> 数式

にしましょう。

これで、ブック全体の数式を対象に検索できますが、そこで何を検索するかというと、

\[

または

]

が良いと思います。

こんな感じ。

なぜかというと、リンクしている部分は

=’C:\Users\username\[linksaki.xlsx]sheet1′!E21

のような数式が入っているからです。

このlinksaki.xlsxなどが、参照できないファイルだと、いつまでもエラーが出るので、この数式を削除するか、自分のPC上にある参照先に変更すればOKです。

名前参照で使っている場合

「名前」として使っているところは、「数式」⇒「名前の管理」で確認することができます。

「名前の管理」をクリックすると、以下のようなダイアログが開きますので、そこで、不要な名前を削除してしまいましょう。

マクロで使っている場合

エクセルの中にボタンなどが配置されていて、そこからマクロ(VBA)を読んでいる場合などは、呼び先のマクロが存在しないなどの理由でリンクのエラーが出る場合があります。

そんな場合は、ボタンを見つけて右クリックして、「マクロの登録」を選びます。

すると、以下のようなマクロ登録のダイアログが開きますので、そのマクロ名で、他のファイルの関数を参照していないかを確認しましょう。

もしそうなっていたら、時ファイル内にそのマクロ関数があるかを確認して(なければ持ってきて)、そこを参照するように変更します。