ワークブックAには、自分のワークブックBを参照する数式があります。ワークブックBを開いて編集を有効にすると、ワークブックAの数式はすべてワークブックBのワークシート名を#REFとして表示します。ブックBを更新するたびに手動でこれらの#REFをすべてワークシート名に戻す必要があるため、これは非常にイライラすることです。
これは、外部ワークブックを参照している他のワークブックには当てはまりません。そのような場合、参照先のワークブックを開いてもエラーが発生しますが、式が物理的に変わることはありません。参照したワークブックの編集が終了したら、[リンクの編集]ダイアログボックスの[値の更新]をクリックしてください。
この2つの状況の違いは何ですか?私が説明した最初の状況を2番目の状況に変更するにはどうすればよいですか。参照されているブックの構造が変わらないのに、Excelが物理的に数式を変更するのはなぜですか?
外部ブックで参照している範囲が変わる可能性があるので、INDIRECT()式は使用したくありません。
ワークシート名は変更されましたか? vlookupのようないくつかの式は変更を許容しますが、countifのようなものはそうではありません。
—
Absinthe
この問題を回避するにはテキストで参照されているファイル名とシート名にINDIRECT()関数を使用します。例えば、あなたが使っている、、
—
Rajesh S
C:\Folder\[A.xls]!Sheet1'!A1
そしてあなたは C:\Folder\[A.xls]!#REF'!A1
。今すぐファイルパス、WBを保存します。セル内のシート名と式を書き換えます。 =INDIRECT(D1&"!A1")
手伝います。
サンプルデータを共有する私たちと一緒にフォーミュラ!
—
Rajesh S