この記事ではエクセルで計算式が反映されない原因(自動なのに:上書き保存:0や空白になる)と解決策【ダブルクリック・エンター】について解説していきます。
他の人が作った計算式が入ったシートで、新たにデータを入れても計算結果が反映されずに原因を探すのに時間がかかってしまい結局最初から作るというケースもあるのではないでしょうか。
ではサンプルを用いて見ていきましょう。
エクセルで計算式が反映されない原因と解決策1【自動:手動:ダブルクリック】
下図のサンプルは来場者数を入れると、その日の入場料が自動で計算されるようになっています。
11月24日の入場者をC3セルに入れると、D3セルに計算結果が表示されるように、「=C6*C2」の計算式が入っていますね。
では計算結果を見てみましょう。
D6セルに計算結果が反映されず”0”のままになっています。
まず原因として考えられるのが、計算方法が「自動」ではなく「手動」となっているケースです。手動となっている場合、指定されたセル(例ではC6セル)にデータを入れても自動計算されません。
確認方法は、メニューで「数式」→「計算方法の設定」で確認することができます。
上図を見てみると、やはり計算方法が「手動」になっていますね。
解決策
解決策としては、以下の2つがあります。
- 「数式」→「計算方法の設定」を“自動”にする。
- 該当セル(例ではD6セル)を選択し、“ダブルクリック+リターン”で計算が実行されます。
自動計算に変更するか、“ダブルクリック+リターン”で再計算させることで正しく計算結果が表示されました。
エクセルで計算式が反映されない原因と解決策2【絶対参照:相対参照】
エクセルで計算式は反映されない他の要因について下図サンプルでみてみましょう。
D5セルには、「=C5*C2」という計算式が入っています。この式を下のセルにオートフィルします。
C6セルに数字を入力してもD6セルは計算結果が”0”のままですね。セルに入っている式を見てみると、何か変ですね。入場費はC2セルを参照するはずがC3セル(データがないセル)を参照しています。
C5セルの計算式は、「=C5*C2」となっています。C2は本来絶対参照(常時参照)であるべきですが、“C2”と相対参照で設定されています。
これが原因でC5セルの計算式をオートフィルした際にC2→C3に変更されてしまったことが原因です。
ではC5セルの計算式を、
=C5*$C$2
絶対参照に変更してオートフィルしてみましょう。
参照先のC2を絶対参照”$C$2”に変更してオートフィルすることで正しく計算結果が表示されました。
エクセルで計算式が反映されない原因と解決策3
次にエクセルで計算式が反映されない他の原因に付いて見てみましょう。
先ほどと同じサンプルを使い、D12セルに入場料の合計を表示させます。
“=SUM(D5:D12)”とSUM関数で計算式を入れました。
D12セルは計算式が反映されておらず”0”になっています。この計算式を入れた時に
「1つ以上の循環参照が発生しています。」
というメッセージが表示されたと思います。またエクセルの左下に、「循環参照:D12」と表示されています。
計算式を見てみると、「=SUM(D5:D12)」と計算結果を表示するD12セルを含んでいます。これが原因で正しく計算されませんでした。
計算式を「=SUM(D5:D11)」とD12セルを含まない式に変更したことで正しく表示されました。
まとめ エクセルで計算式が反映されない原因と対策(ダブルクリック・エンター)など
この記事ではエクセルで計算式が反映されない3つの原因と解決策を解説しました。
エクセルでのさまざまな処理を理解し、業務に役立てていきましょう。