質問: excelのグラフでブック間リンクがエラー 使用環境は、win7 + office2010(excel2010)です。 ブックaにデータがあり、ブックbにグラフ化するために必要なデータを シートにリンクし、そのデータを基にグラフを作成しました。(オブジェクト) ブックaとブックbを保管して閉じます。 ブックaを開いてからbを開くと問題ないのですが、 逆にブックbを開いて、リンク更新をokにしたのち、 ブックaを開くと#refエラーとなります。 #refは、シートがないとのエラーです。 通常のリンクではエラーがでないのに、グラフを作成したものだけエラーになります。 今は、開く順序を決めて対処してますが、 知らずに保管してしまうとリンクが壊れてしまいます。 特にブックbを開いてリンク更新し、グラフを確認したときに元のデータを確認しようと ブックaを開くことは、よくあるので、困ってます。 何か対処方法はないでしょうか。よろしくお願いいたします。
回答: 対処方法、はありません。 これはexcelばかりではなく、phpやrubyでも起こることです。 インスタンスがないのに参照という話です。 プログラムに文法的問題はなく、正しいけれど、実行時に起きるエラーはほとんどの場合これです。 ちょっと考えてみたら簡単なことです。論文にリファレンスというのが最後につきますね。そこに 「小保方晴子:stap細胞生成方法」 というのを付けたとします。小保方論文が存在していて誰でも見えるところにあるのであればこの論文も意味を持ちます。 しかし、小保方論文が取り下げられたら、この論文の根拠はなくなりますよね。 リファレンスといいますがrefferenceですから refエラーであって、論文の意味がないですね。 一生懸命に論文を読んで、最後にこのリファレンスがあったら、読んだことが意味がなくなりますね。 そう思ったら、この論文を読む人は、まずお尻についているリファレンスリストの文献を確認して全部が確保できると思ってから読むのが賢いんじゃないでしょうか。 excelの話にもどりますが、単なるデータの参照表示であれば、キャッシュといって、前回読んだものをそのまま出す手があります。 グラフ作成をするためには、データを読んで計算をし直して描画する必要がありますから、データを触りに行く必要があります。 触ろうとしたらひらかれていないのであれば、#refエラーがでて当然です。 したがって、開く順番を間違えないようにする、また、よそにもっていく場合も双方持っていき順番通りに開くように指示する、以外の対処方法はありません。