• 締切済み

#ref!エラーその2修正

別スレッドの#ref!エラーその2を修正した質問です。先の質問は無視願います。あとで削除します。 これも先の#REF!エラーで質問したと同じ、ネットからダウンロードしたexcelファイルですが、実例でお聞きします。 セルr644には=if(b645="","",if(q644="kai",b645-f644,if(q644="uri",f644-b645,""))) とあって、最終データ行(645)のセルr645にコピーしますと、"ref!エラーとなります。この式は、最終行の翌日のセルb646にデータがあるときだけ計算するようになっています。それで今B646にだけデータを入力した状態であるのに#ref!エラーとなります。実は645行に当初は入力しうまくいっていたのですが、別スレッドの行削除を行った後、このエラーになります。しかし現にB646にはデータが存在するので納得できません。 ヘルプの数式の検証で見てみても、B646とあるべき部分が#ref!となっているだけなので、実際の文字が何かわからず、原因を調べにくく感じています。 何が原因と考えられるでしょうか。どうも人様の作ったファイルを読み解くのは骨が折れます。

みんなの回答

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

>"ref!エラーとなります。 >別スレッドの行削除を行った後、このエラーになります。 646行目を削除したためです。 646行をを削除した段階でエラーが発生したので B646(行削除前はB647?)にデータのあるなしは関係ありません。 解決策は行削除を行うたびに数式を再コピーするか、行削除に対応した数式にしてください。 1例ですが R644=IF(OR(INDIRECT("B"&ROW()+1)="",Q644=""),"",IF(Q644="KAI",1,-1)*INDIRECT("B"&ROW()+1)-F644))

qhtsige
質問者

お礼

ご返事ありがとうございます。 このファイルを再起動したときこのセルが循環参照とみなされていることがわかりました。(これが原因)。しかし、どのように循環参照であるか調べましたがよくわかりませでした。難しそうなのであきらめます。 なおご提案の内容はよくわかりませんでした。

関連するQ&A